Jump to content

Plugin-Wunsch "Zufall"


Empfohlene Beiträge

Hallo liebe Plugin-Konstrukteure,

ich habe jetzt auch mal einen Wunsch an euch. Und zwar fände ich einen Generator nützlich, der zuvor ausgewählte Objekte zufällig auf einer begrenzten Fläche positioniert. Am liebsten noch an die Höhe auf der Bodenplatte angepasst.

Was könnte man damit machen? Z.B. Pflanzen wirklich willkürlich wachsen lassen. Wobei dabei sogar noch zu überlegen wäre, ob die Skalierung in einem vorher festzulegenden Wert per Zufall variiert wird.

Ist so etwas überhaupt möglich?

LG

Brummi

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Brummi,

... habe ich sogar mal für mich gemacht (noch im EP13)... war allerdings noch etwas einfacher gestaltet, da es nur auf einer ebenen Bodenplatte funktioniert hat...
Da konnte eine ich Ebene (Grundkörper) auf die Bodenplatte setzen, einen Baum auswählen und dann sagen wie viele Duplikate mit welcher Skalierungsvarianz zufällig auf die Fläche gesetzt werden sollen und so einen kleinen Wald "erzeugen"...

... prinzipiell wäre es sogar mit den jetzigen Mitteln der Schnittstelle möglich, das Profil der Bodenplatte mit zu berücksichtigen...

... ich kann ja mal den einen oder anderen Versuch machen...

Gruß
EASY 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

... ich habe einmal etwas angefangen einen kleinen Versuch zu starten...

Da Ungeduldige nicht gerne bis zu Ende lesen... das wesentliche in einen Satz zusammengefasst zuerst:

Es ist ein erster Versuch in dem man irgendetwas was "Baum" heißt irgendwo auf die Platte stellt, den Umreis (Radius) in dem das Objekt wie oft dupliziert werden soll festlegt, sowie festlegt wie viele von den Duplikaten in welchem Bereich skaliert werden sollen und wenn die Aufteilung nicht gefällt, kann man das Verteilen neu starten, wobei sich die Aufteilung an einer eventuell neu gesetzten Position von "Baum" orientiert und selbstverständlich wird das Geländeprofil mit berücksichtigt.

Bild_1.jpg


(Es werden Schnittstellenkommandos benutzt, die es erst seit den Beta-Versionen gibt)Dieses Programm läuft nicht in der MBS-Version 2.4 !!!

nur einmal durchgeführt werden ("Start") -> es findet keine Überprüfung statt, ob schon Duplikate von "Baum" vorhanden sind.
Erst mit dem Löschen aller gesetzten Objekte/Duplikate) ("Löschen") kann neu gestartet werden.Da es sich um einen Test handelt, kann der Setzvorgang

 Da für die Duplikate das Geländeprofil "abgetastet" wird, ist es nicht zwingend erforderlich, daß das Ursprüngliche Objekt "Baum" mit dem Nullpunkt auf der Bodenplatte liegt.

 Die Bodenplatte muß den Namen "Bodenplatte" tragen, sowie das Ursprungsobjekt "Baum"

Ein korrektes Setzen auf die Oberfläche der Bodenplatte ist nur für Objekte möglich, deren Nullpunkt in z-Richtung "ganz unten" (Stellfläche) liegt.

Ein "Mindestabstand" zwischen den Objekten ist noch nicht festgelegt, so daß sich größere Objekte teilweise überlagern können.

... soweit mal für den "ersten Schuß" von diesem Programm...

Es ist mit diesem Programm relativ einfach ist, viele Objekte zu erzeugen... benutzt es "trotzdem" mit Bedacht !

 

Sollte jemand über mathematische Fähigkeiten verfügen oder Erfahrungen mit solchen "Verteilungsaufgaben" haben...
... bitte unbedingt melden !!!

 ... bin auf Eure Reaktionen gespannt...

Gruß
EASY

Zufall_test02.zip

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Brummi,

... ist (wie es aussieht) ein Problem der Zugriffsrechte... (da mische ich mich allerdings bei "fremden" Rechnern sehr ungerne mit ein...)

Kopiere die .exe mal in einen mit "einfacheren" Zugriffsrechten z.B. in einen Ordner Deiner "Eigenen Datein"...

... vielleicht hat da Neo noch einen besseren Tip...

Gruß
EASY

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hall EASY

Hab den Fehler gefunden.

Ich hatte das Programm als Plugin installiert. Da geht es nicht. Wenn ich es aber extern starte geht es. Sehr fein!

Zwei Sachen hab ich:

  1. Wenn ich das Programm beende und einen anderen "Baum" pflanze, werden die alten "Aufforstungen" überschrieben. Ich wollte verschieden Pflanzen mischen.
  2. Einige Objekte verschwinden bei hügeligem Gelände etwas im Boden.

HG

Brummi

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Brummi,

1) ... ist nur zum prinzipiellen zeigen... geht nur (einmalig) mit einem Objekt ! (War mein Hinweis nicht aussagekräfitg genug?)

2) ... was ist "etwas"? ... und bedenke, daß das Modell unten eine ebene "Standfläche" hat... in einer Senke "verschwindet" dann schon mal was im Boden.

Gruß
EASY

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

.... wieder ein Stückchen weiter...

- Schon gesetzte Objekte werden nun berücksichtigt ("Start" kann mehrmals gedrückt werden [evtl. mit anderen Parametern])
- Es können mehrere Objekte verwendet werden (neues Objekt über "Objekt einlesen")
- Die Skalierungseinstellungen beziehen sich auf die Skalierung des Original-Objektes im MBS
- "Neu verteilen" bezieht sich auf die letzte Aktion von "Start" (Postitionsverschiebung vom Original und "Setzradius" werden berücksichtigt)
- "Löschen" bezieht sich auf die letzte Aktion von "Start"

Gruß
EASY

Zufall_test02.zip

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo EASY,

dat wird(y).

016.jpg

Wald mit Unterholz.

Mein einziges Problem: Die Objekte müssen ja eine definierte Unterseite haben, damit sie von der Höhe her richtig in der Landschaft stehen.

Meine Tannen haben aber gar keine Grundfläche. Sie bestehen nur aus vier 2D-Projekten, die im Winkel von 45° angeordnet sind. Dadurch sind sie allerdings äußerst Ressourcen-sparend. Ich hatte vor, noch mehr solcher Einfachbäume für größere Wälder zu erstellen.

Kann man das so einrichten, dass nicht eine Fläche sondern ein (unterer) Punkt des Modells die Höhe im Gelände definiert? Das wäre genial.

LG

Brummi

P.S.: Bei der Betrachtung des Bildes eben aufgefallen: Eine zufällige Drehung um die z-Achse würde die Sache noch weiter beleben.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Brummi,

Zitat

Kann man das so einrichten, dass nicht eine Fläche sondern ein (unterer) Punkt des Modells die Höhe im Gelände definiert?

... mal zum Verständnis, wie das mit der Ermittlung der Höhe funktioniert:

Neo hat es ermöglicht über die Schnittstelle von einen Punkt aus einen "Ping" (wie beim Echolot) zu senden.
Vereinfacht: Ich sende einen Ping vom Nullpunkt des Baumes aus, der auf ein Objekt ("Bodenplatte") treffen soll. Als Rückgabewert erhalte ich die absoluten Koordinaten der Oberfläche von "Bodenplatte". Auf diese Koordinaten setze ich den Baum. Als Referenz dient also schon ein Punkt (Nullpunkt das zu setzenden Objektes... deshalb geht es auch nur mit Objekten, bei denen der Nullpunkt "unten" ist und nicht in der Mitte (-> Objekt würde zur Hälfte in der Bodenplatte verschwinden)... ob das Objekt nun unten eine (Stand-) Fläche hat, oder nicht kann ich nicht feststellen. Dies führt logischerweise dazu, daß ein Objekt, das unten eine Fläche hat, im Gelände in einer Senke diese Fläche "verschwindet" und am Hang (zur Hälfte) "in der Luft" hängt...

Anmerkung: Bei der "automatischen Hähenanpassung" im MBS, wird ein "verschobener Nullpunkt" im Modell ignoriert und der unterste Punkt des Modelles als Referenz genommen... was allerdings im hügeligen Gelände bei Modellen mit "Standfläche" logischerweise zu ähnlichen "Problemen" führt...

... so gesehen liegt es an Dir (als Modellbauer), wohin Du den Nullpunkt im Modell (für diese Aufgabe) für den "ungünstigsten" Fall setzt....

Zitat

Eine zufällige Drehung um die z-Achse würde die Sache noch weiter beleben.

  ... wäre mein nächster (Fort-)Schritt gewesen;)

Gruß
EASY

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo EASY,

das Problem sitz - wie meistens - ca. 50cm vor dem Bildschirm. Ich habe immer mit "Blautanne1" getestet. Und ausgerechnet dieses Modell hat, warum auch immer, den Nullpunkt nicht unten. Wie du schon geschrieben hast, ignoriert die manuelle Platzierung im MBS so etwas. Deshalb ist es nie aufgefallen. Leider komme ich an die Originaldatei nicht mehr heran, um das zu ändern. Aber mit den anderen Tannen geht es.

Ich habe mal testweise ein Modul mit Hilfe deines Programms ausgestattet:

017.jpg

So kommt man mit nur zwei Modellen für die Begrünung aus. Wenn jetzt der Drehfaktor noch dazu kommt, kann ich in Serie gehen;).

HG

Brummi

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 1 Monat später...

Hallo Brummi,

... um ehrlich zu sein, bin ich etwas verwirrt.... wie Dein Windows auf die Idee kommt die Ini.xml für dieses Programm auf C:\Windows\System32 zu suchen, ist mir allerdings ein absolutes Rätsel (... wie so einiges an Windows)... eigentlich sucht (ober erstellt) das Programm die Ini.xml in dem Ordner in dem die .exe abgelegt ist...

Nun weiß ich natürlich nicht, wo Du die .exe abgelegt hast ?...

... aber versuche es erst einmal damit die Ini.xml aus dem Ordner zu löschen in dem die .exe steht...

... vorsichtshalber vorher im Editor anschauen ob sie so ähnlich aussieht:

<?xml version="1.0" encoding="utf-8"?>
<!--LastClosingTime: 11.03.2016 21:57:17-->
<Einstellungen>
  <AutomatischVerbinden Wert="True" />
  <ImmerVorgergrund Wert="True" />
  <FensterpositionMerken Wert="True">
    <PosX Wert="234" />
    <PosY Wert="234" />
  </FensterpositionMerken>
  <MinimiertStarten Wert="False" />
  <MBSAnimation Wert="Unchecked" />
</Einstellungen>

... nicht daß Du etwas verkehrtes löscht...

ansonsten .exe und Ini.xml löschen... neu downloaden und abspeichern...

Gruß
EASY

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 4 Wochen später...

Hallo,

... so ganz in Ruhe gelassen hat mich dieses Projekt noch nicht,,, und so habe ich es noch etwas erweitert...

Neu hinzugekommen:
- Es können bis zu 5 Objekte ausgewäht werden (diese können mit einer Gewichtung [... wie oft im Verhältnis zu den anderen] versehen werden)
Anmerkung: Bei einer Gewichtung von "0" wird das Objekt ignoriert.
- Es kann ein Mindestabstand eingegeben werden
Anmerkung: Damit sich keine geraden Reihen bilden ("typisch deutscher Wald") variiert der Mindestabstand zufallig bis zur Hälfte des eingestellten Wertes)
- Geometrie Ellipse und Rechteck
Anmerkung:
Die Ellipse und das Rechteck können nicht gedreht werden... beziehen sich also auf die X-Y-Achse... da muß ich (mathematisch) noch etwas in mich gehen...
5700cd503aee4_Oberflche.jpg.1e93805e34e7

Der Mittelpunkt der Fläche richtet sich nach der Position des "Leitobjektes" [ "Leitobjekt markieren"] -> erstes Objekt in der Liste, die Position der anderen Objekte spielt keine Rolle.

... die restlichen Funktionen sind "wie  gehabt"...

P.S. Die Hilfe ist (immer noch nicht) ausgefüllt.

Gruß
EASY
 

 


 

Zufall_Test2b.zip

Bearbeitet von EASY
Link zu diesem Kommentar
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen.

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...