DE102018007145A1 - Create 3D structures using genetic programming to meet functional and geometric constraints - Google Patents
Create 3D structures using genetic programming to meet functional and geometric constraints Download PDFInfo
- Publication number
- DE102018007145A1 DE102018007145A1 DE102018007145.7A DE102018007145A DE102018007145A1 DE 102018007145 A1 DE102018007145 A1 DE 102018007145A1 DE 102018007145 A DE102018007145 A DE 102018007145A DE 102018007145 A1 DE102018007145 A1 DE 102018007145A1
- Authority
- DE
- Germany
- Prior art keywords
- vrg
- systems
- vertex
- rules
- vertices
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/005—Tree description, e.g. octree, quadtree
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
Es sind Techniken zum Erzeugen von 3D-Strukturen offenbart. Eine Verfahrensweise, welche die Techniken gemäß einer Ausführungsform implementieren, umfasst das Initialisieren von Systemen, die zum Bereitstellen von Regeln ausgebildet sind, die Kantenverbindungen zwischen Scheitelpunkten und parametrische Eigenschaften der Scheitelpunkte festlegen. Die Regeln werden auf einen Anfangssatz von Scheitelpunkten zum Erzeugen von 3D-Graphen für jedes der Scheitelpunkt-Regel-Graph (VRG)-Systeme angewandt. Der Anfangssatz von Scheitelpunkten ist mit bereitgestellten Interaktionsoberflächen eines 3D-Modells assoziiert. Grundgerüstgeometrien werden für die 3D-Graphen erzeugt und eine assoziierte objektive Funktion wird berechnet. Die objektive Funktion ist zum Bewerten der Eignung der Grundgerüstgeometrien auf der Basis von vorgegebenen geometrischen und funktionellen Beschränkungen ausgebildet. Eine 3D-Struktur wird durch eine iterative Anwendung von genetisches Programmieren-Techniken, die auf die VRG-Systeme zum Minimieren der objektiven Funktion angewandt werden, erzeugt. Aktualisierte Beschränkungen und Interaktionsoberflächen werden zum Einbeziehen in das iterative Verfahren erhalten.Techniques for creating 3D structures are disclosed. One approach that the techniques implement according to one embodiment includes initializing systems configured to provide rules that define edge connections between vertices and parametric properties of the vertices. The rules are applied to an initial set of vertices for generating 3D graphs for each of the vertex rule graph (VRG) systems. The initial set of vertices is associated with provided interaction surfaces of a 3D model. Backbone geometries are generated for the 3D graphs and an associated objective function is calculated. The objective function is designed to evaluate the suitability of the skeleton geometries based on given geometrical and functional constraints. A 3D structure is created by an iterative application of genetic programming techniques applied to the VRG systems to minimize objective function. Updated constraints and interaction surfaces are included for inclusion in the iterative process.
Description
GEBIET DER OFFENBARUNGAREA OF REVELATION
Diese Offenbarung betrifft Techniken zum Erzeugen von virtuellen 3-dimensionalen (3D) Strukturen und insbesondere Techniken zum Erzeugen von virtuellen 3D-Strukturen unter Verwendung eines genetischen Programmierens, das auf graphenbasierte prozedurale Modelle angewandt wird, zum Erfüllen von funktionellen und geometrischen Beschränkungen.This disclosure relates to techniques for generating virtual 3-dimensional (3D) structures, and more particularly to techniques for generating 3D virtual structures using genetic programming applied to graph-based procedural models to fulfill functional and geometric constraints.
HINTERGRUNDBACKGROUND
Das Modellieren von 3D-Objekten ist typischerweise ein schwieriges und zeitaufwändiges Ziel, das häufig künstlerische Fähigkeiten zusammen mit einem hohen Kenntnisstand und einer sehr guten Expertise mit spezialisierten Hilfsmitteln erfordert. Deshalb besteht eine Tendenz dahingehend, dass die Erzeugung von 3D-Modellen teuer ist. Es gibt einige computerbasierte 3D-Modellierungssysteme, jedoch sind diese Systeme im Allgemeinen auch schwer zu verwenden, und zwar aufgrund der großen Zahl von komplexen Parametern und Regeln, die für ein vorgegebenes Ziel erstellt und feinabgestimmt werden müssen. Zusätzlich erfordern viele dieser computerbasierten Systeme große Mengen an Daten zum Trainieren, was in manchen Situationen unbequem und unpraktisch sein kann, und selbst wenn sie trainiert sind, ist das Leistungsvermögen nicht besonders gut.Modeling 3D objects is typically a difficult and time-consuming goal that often requires artistic skills along with a high level of knowledge and expertise with specialized tools. Therefore, there is a tendency that the generation of 3D models is expensive. There are some computer-based 3D modeling systems, but these systems are generally also difficult to use because of the large number of complex parameters and rules that must be created and fine-tuned for a given target. Additionally, many of these computer-based systems require large amounts of data for training, which can be inconvenient and impractical in some situations, and even when trained, performance is not very good.
Figurenlistelist of figures
-
1 ist ein Blockdiagramm eines Systems zum Erzeugen von 3D-Strukturen, das gemäß einer Ausführungsform der vorliegenden Offenbarung ausgebildet ist.1 FIG. 10 is a block diagram of a system for generating 3D structures formed in accordance with an embodiment of the present disclosure. -
2 zeigt ein Beispiel eines vorgegebenen 3D-Modells, mit dem die erzeugte 3D-Struktur interagieren wird, gemäß einer Ausführungsform der vorliegenden Offenbarung.2 FIG. 12 shows an example of a given 3D model with which the generated 3D structure will interact according to an embodiment of the present disclosure. -
3 zeigt ausgewählte Interaktionsoberflächen des 3D-Modells gemäß einer Ausführungsform der vorliegenden Offenbarung.3 FIG. 12 illustrates selected interaction surfaces of the 3D model according to an embodiment of the present disclosure. FIG. -
4 zeigt Regelgraphen und Regelgrapherweiterungen gemäß einer Ausführungsform der vorliegenden Offenbarung.4 FIG. 12 shows rule graphs and rule graph enhancements according to an embodiment of the present disclosure. FIG. -
5 zeigt Graph-Überschneidungen, die mit einem genetischen Programmieren assoziiert sind, das auf Vertex- bzw. Scheitelpunkt-Regel-Graph (VRG)-Systeme angewandt wird, gemäß einer Ausführungsform der vorliegenden Offenbarung.5 FIG. 12 shows graph intersections associated with genetic programming applied to vertex control graph (VRG) systems, according to an embodiment of the present disclosure. FIG. -
6 zeigt beispielhafte 3D-Strukturen, die als Reaktion auf das Variieren von Beschränkungen erzeugt werden, die mit einem vorgegebenen Objektmodell zusammenhängen, gemäß einer Ausführungsform der vorliegenden Offenbarung.6 FIG. 10 illustrates exemplary 3D structures generated in response to varying constraints associated with a given object model, according to an embodiment of the present disclosure. -
7 ist ein Flussdiagramm, das ein Verfahren zum Erzeugen von 3D-Strukturen gemäß einer Ausführungsform der vorliegenden Offenbarung zeigt.7 FIG. 10 is a flowchart showing a method of creating 3D structures according to an embodiment of the present disclosure. FIG. -
8 ist ein Blockdiagramm, das schematisch eine Rechenplattform zeigt, die zum Ausführen von jedweder der Techniken ausgebildet ist, wie sie verschiedenartig in dieser Offenbarung beschrieben sind, und die gemäß einer Ausführungsform der vorliegenden Offenbarung ausgebildet ist.8th FIG. 12 is a block diagram schematically illustrating a computing platform configured to perform any of the techniques as variously described in this disclosure, and configured in accordance with an embodiment of the present disclosure.
DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION
Wie es vorstehend angemerkt worden ist, kann das Erzeugen von 3-dimensionalen (3D) Modellen unter Verwendung von bestehenden Techniken schwierig, zeitaufwändig und teuer sein, da das Verfahren das Zeichnen einer sehr großen Anzahl von kleinen detaillierten Formen unter Verwendung von komplexen Softwarehilfsmitteln umfasst, die eine Expertise und/oder ein künstlerisches Vermögen erfordern. Kurz gesagt gibt es keine bekannten Techniken, die zum Verwenden eines Satzes von vorgegebenen Beschränkungen zum Erzeugen eines 3D-Modells eines neuen Objekts, das mit einem bestehenden Objekt interagiert, gestaltet sind, wobei die vorgegebenen Beschränkungen eine Interaktionsoberfläche des bestehenden Objekts umfassen oder in sonstiger Weise abgeleitet sind. Zu diesem Zweck wäre es erwünscht, ein System zur Verfügung zu haben, das eine 3D-Struktur mit einer minimalen Nutzereingabe und -über-wachung erzeugen kann, wie z.B. auf der Basis eines beschränkten Satzes von relativ einfachen, vom Nutzer festgelegten geometrischen und funktionellen Beschränkungen für das zu erzeugende Objekt. Beispielsweise wenn das Ziel die Erzeugung einer 3D-Struktur eines Stuhls ist, kann der Nutzer ein umhüllendes Volumen des gewünschten Stuhls (z.B. eine Zeichen-Box, die den Raum umfasst, in dem der Stuhl vorliegen wird), Interaktionsoberflächen zwischen dem Stuhl und einem Modell eines Menschen, der in dem Stuhl sitzen wird (z.B. der relativ vertikale Rücken des Menschen und das relativ horizontale Gesäß und der relativ horizontale hintere Hüftbereich), und ein oder mehrere Faktor(en), der oder die bezüglich des Aufbaus des Stuhls instruktiv ist oder sind (z.B. eine Obergrenze für die Masse des Stuhls, Lastaufnahmeerfordernisse des Stuhls und spezifische Materialien, aus denen der Stuhl hergestellt ist), erzeugen. Das System kann dann eine 3D-Struktur für den Stuhl erzeugen, welche diese Anforderungen erfüllt. Wie es im Hinblick auf diese Offenbarung ersichtlich ist, können diese geometrischen und funktionellen Beschränkungen für den zu erzeugenden Gegenstand direkt durch den Nutzer oder indirekt mittels des Nutzers bereitgestellt werden, der ein Modell bereitstellt, mit dem das Objekt interagieren soll. In dem letztgenannten indirekten Fall sollte beachtet werden, dass das vorgegebene Modell zum Ableiten der relativen Beschränkungen, wie z.B. eines umhüllenden Volumens des gewünschten Stuhls, verwendet werden kann oder in sonstiger Weise intuitiv dafür instruktiv ist. Das System kann ferner dem Nutzer ermöglichen, die Beschränkungen zu modifizieren und gegebenenfalls das Verfahren zu iterieren, bis ein zufriedenstellendes Ergebnis erhalten wird. Es sollte beachtet werden, dass die Modifizierung der Beschränkungen direkt oder indirekt durch Modifizieren des Modells, mit dem das Objekt interagieren soll, durchgeführt werden kann.As noted above, creating 3-dimensional (3D) models using existing techniques can be difficult, time-consuming, and expensive because the method involves drawing a very large number of small detailed shapes using complex software tools. which require an expertise and / or an artistic ability. In short, there are no known techniques designed to use a set of predetermined constraints to create a 3D model of a new object that interacts with an existing object, where the predetermined constraints include an interaction surface of the existing object or otherwise are derived. To this end, it would be desirable to have a system that can produce a 3D structure with minimal user input and monitoring, such as based on a limited set of relatively simple user-defined geometric and functional constraints for the object to be created. For example, if the goal is to create a 3D structure of a chair, the user may have an enveloping volume of the desired chair (eg, a sign box that includes the space in which the chair will be present) interaction surfaces between the chair and a model a person who will sit in the chair (eg, the relatively vertical back of the human and the relatively horizontal buttocks and the relatively horizontal posterior hip area), and one or more factor (s) that are instructive in the structure of the chair or are (eg an upper limit on the mass of the chair, load-bearing requirements of the chair and specific materials from which the chair is made). The system can then create a 3D structure for the chair that meets these requirements. As can be seen in light of this disclosure, these can be geometric and functional Restrictions on the object to be created are provided directly by the user or indirectly by the user providing a model with which the object is to interact. In the latter indirect case, it should be noted that the given model may be used to derive the relative constraints, such as an enveloping volume of the desired chair, or otherwise be intuitively instructive. The system may also allow the user to modify the constraints and optionally iterate the process until a satisfactory result is obtained. It should be noted that the modification of the constraints can be performed directly or indirectly by modifying the model with which the object is to interact.
Folglich sind Techniken zum Erzeugen von 3D-Strukturen auf der Basis von durch einen Nutzer festgelegten oder in einer sonstigen Weise vorgegebenen funktionellen und geometrischen Beschränkungen offenbart. Diese Beschränkungen können in einer relativ einfachen Weise durch die Verwendung eines Modells festgelegt oder in einer sonstigen Weise bereitgestellt werden, mit dem die Ziel-3D-Struktur interagieren soll. Auf diese Weise kann das vorgegebene Modell zum Beginnen der Konstruktion der Ziel-3D-Struktur verwendet werden. Diese Techniken nutzen graphenbasierte prozedurale Modelle, die sich durch genetisches Programmieren entwickeln. Die prozeduralen Modelle sind Familien von Systemen, die Regeln für die Verbindung von Vertex- bzw. Scheitelpunkten unter Verwendung von Kanten festlegen, wie es nachstehend detaillierter beschrieben ist. Diese Systeme werden hier als Vertex- bzw. Scheitelpunkt-Regel-Graph (VRG)-Systeme bezeichnet. Die VRG-Systeme können mit zufällig ausgewählten Regeln und Werten initialisiert werden. Die Regeln werden parallel auf einen Anfangssatz von Vertex- bzw. Scheitelpunkten angewandt, die sich durch die Verbindungskanten erweitern, wie es durch die Regeln festgelegt wird, so dass komplexe 3D-Geometrien erzeugt werden. Die resultierenden Strukturen können gegen die vom Nutzer festgelegten oder in sonstiger Weise vorgegebenen Beschränkungen bewertet werden, und die am Besten arbeitenden VRG-Systeme der Familie können für eine Mutation in die nächste Generation (Iteration) des Verfahrens ausgewählt werden. Die Iteration setzt sich durch viele Generationen fort, wenn sich die VRG-Systeme entwickeln, so dass geeignetere Regeln erzeugt werden, bis die resultierende 3D-Struktur die Anforderungen des Nutzers erfüllt.Thus, techniques for creating 3D structures based on user-defined or otherwise predetermined functional and geometric constraints are disclosed. These constraints can be set in a relatively simple manner through the use of a model or otherwise provided with which the
Insbesondere und gemäß einer Ausführungsform der vorliegenden Offenbarung ist ein System zum Erzeugen von 3D-Strukturen unter Verwendung von graphenbasierten prozeduralen Modellen ausgebildet, die durch genetisches Programmieren iterativ modifiziert werden, so dass sie funktionelle und geometrische Beschränkungen erfüllen. Beispielsweise wird in einer Ausführungsform eine Familie von Scheitelpunkt-Regel-Graph (VRG)-Systemen initialisiert und zum Bereitstellen von Regeln ausgebildet, die Kantenverbindungen zwischen Scheitelpunkten sowie parametrische Eigenschaften der Scheitelpunkte festlegen. Die Regeln werden auf einen Anfangssatz von Vertex- bzw. Scheitelpunkten zum Erzeugen von 3D-Graphen unter Verwendung von jedem der VRG-Systeme angewandt. Der Anfangssatz von Scheitelpunkten kann mit durch den Nutzer festgelegten oder in sonstiger Weise abgeleiteten Interaktionsoberflächen eines 3D-Modells assoziiert werden, die mit der zu erzeugenden Struktur interagieren. Dann werden Grundgerüstgeometrien für die 3D-Graphen erzeugt und eine dazugehörige objektive Funktion wird berechnet. Die objektive Funktion ist zum Bewerten der Eignung der Grundgerüstgeometrien auf der Basis von durch den Nutzer festgelegten Geometrien und funktionellen Beschränkungen ausgebildet. Die gewünschte 3D-Struktur wird durch eine iterative Anwendung von genetisches Programmieren-Techniken auf einen ausgewählten Teilsatz der Familie von VRG-Systemen zum Minimieren der objektiven Funktion und Maximieren der Eignung der Struktur erzeugt. Eine Nutzerrückmeldung, z.B. in der Form von aktualisierten Beschränkungen und Interaktionsoberflächen (z.B. auf der Basis der Veränderung des Anfangsmodells), kann in das iterative Verfahren zum Unterstützen des Führens der Evolution einbezogen werden, bis der Nutzer mit dem Ergebnis zufrieden ist.In particular, and in accordance with one embodiment of the present disclosure, a system for generating 3D structures is formed using graph-based procedural models that are iteratively modified by genetic programming to meet functional and geometric constraints. For example, in one embodiment, a family of vertex rule graph (VRG) systems are initialized and formed to provide rules that define edge connections between vertices and parametric properties of the vertices. The rules are applied to an initial set of vertex points for generating 3D graphs using each of the VRG systems. The initial set of vertices may be associated with user defined or otherwise derived interaction surfaces of a 3D model that interact with the structure to be generated. Then skeletal geometries for the 3D graphs are generated and an associated objective function is calculated. The objective function is designed to assess the suitability of the skeleton geometries based on user-defined geometries and functional constraints. The desired 3D structure is generated by an iterative application of genetic programming techniques to a selected subset of the family of VRG systems to minimize the objective function and maximize the fitness of the structure. A user feedback, e.g. in the form of updated constraints and interaction surfaces (e.g., based on the change of the initial model) may be included in the iterative process of assisting in guiding evolution until the user is satisfied with the outcome.
Folglich stellt der vorstehend genannte Rahmen ein Hilfsmittel zum Erzeugen von 3D-Strukturen in einer relativ effizienten Weise mit einer minimalen Nutzereingabe oder-über-wachung bereit, und zwar verglichen mit bestehenden Techniken, auf der Basis eines minimalen Satzes von durch den Nutzer bereitgestellten oder in sonstiger Weise abgeleiteten funktionellen und geometrischen Beschränkungen, die von einem Modell abgeleitet sind, mit dem die Ziel-3D-Struktur interagieren soll. Die offenbarten Techniken verbessern die Effizienz, vermindern die Erzeugungszeit und senken die Kosten des 3D-Modellierens. Im Hinblick auf diese Offenbarung sind zahlreiche Konfigurationen und Variationen ersichtlich.Thus, the above framework provides a means for generating 3D structures in a relatively efficient manner with minimal user input or monitoring as compared to existing techniques, based on a minimum set of user-supplied or in-frame otherwise derived functional and geometric constraints derived from a model with which the
Systemarchitektursystem architecture
Die
Das Verfahren beginnt durch Bereitstellen einer Eingabe-3D-Szene
Im Betrieb
Es sind komplexere Szenen möglich. Beispielsweise können viele menschliche Modelle in einer Szene bereitgestellt werden, wobei jedes so angeordnet ist, dass es mit verschiedenen Strukturen in verschiedener Weise interagiert. Selbstverständlich müssen die Modelle nicht auf Menschen beschränkt sein. Beispielsweise könnte das Modell einen Frachtgegenstand darstellen, der auf einem Anhänger transportiert wird, wobei der Anhänger die zu erzeugende 3D-Struktur ist, die an den Typ der Fracht angepasst werden sollte.More complex scenes are possible. For example, many human models can be provided in a scene, each arranged to interact with different structures in different ways. Of course, the models do not have to be limited to humans. For example, the model could represent a cargo item being transported on a trailer, the trailer being the 3D structure to be created, which should be adapted to the type of cargo.
Der Nutzer
Eine maximale und/oder minimale Gesamtlänge aller Vertex- bzw. Scheitelpunkte kann oder können festgelegt werden, um z.B. die Komplexität und gegebenenfalls die Kosten der resultierenden 3D-Struktur einzustellen. Entsprechend kann eine maximale und/oder minimale Gesamtmasse der resultierenden Struktur festgelegt werden. Die Masse kann im Allgemeinen auf die Zahl und die Größe der Komponenten (z.B. Scheitelpunkte und Kanten) bezogen sein. In einigen Ausführungsformen können spezifische Massenwerte für die Komponenten bereitgestellt werden, z.B. in den Regeln der VRG-Systeme. Symmetriebeschränkungen können ebenfalls festgelegt werden, wobei es z.B. erforderlich ist, dass die resultierende Struktur um eine oder mehrere Achse(n) symmetrisch ist.A maximum and / or minimum total length of all vertexes or vertices may or may not be set, e.g. adjust the complexity and, if necessary, the costs of the resulting 3D structure. Accordingly, a maximum and / or minimum total mass of the resulting structure can be determined. The mass may generally be related to the number and size of components (e.g., vertices and edges). In some embodiments, specific mass values for the components may be provided, e.g. in the rules of the VRG systems. Symmetry constraints can also be specified, e.g. it is necessary that the resulting structure is symmetrical about one or more axes.
Stabilitätsbeschränkungen können ebenfalls bereitgestellt werden. Beispielsweise kann es erforderlich sein, dass der Schwerpunkt der resultierenden Struktur innerhalb eines spezifischen Bereichs innerhalb der Struktur beschränkt ist, so dass sie selbst unter dem Einfluss der Schwerkraft oder anderen ausgeübten Kräften nicht kippt. Solche Stabilitätsbeschränkungen können ferner in jedweder gewünschten Weise auf das Vermögen der Struktur, zu stehen, ein weiteres Objekt zu stützen und/oder geschoben, gezogen oder gegriffen zu werden, erweitert werden oder sich darauf beziehen.Stability constraints can also be provided. For example, the center of gravity of the resulting structure may be required to be confined within a specific area within the structure such that it does not tilt even under the influence of gravity or other forces exerted. Such stability constraints may further be extended or referenced in any desired manner to the ability of the structure to support and / or be pushed, pulled or gripped by another object.
Zusätzlich können Gewichtungsskalafaktoren bereitgestellt werden, um eine oder mehrere der ausgewählten Beschränkungen in dem Verfahren des Messens der Eignung der erzeugten Struktur gemäß den offenbarten Techniken zu betonen oder abzuschwächen. Die vorstehend genannte Liste von Beschränkungen ist als ein Beispiel bereitgestellt und soll nicht allumfassend sein. Jedwede Beschränkung, die effizient bewertet werden kann, kann potenziell zum Führen des Verfahrens verwendet werden, einschließlich die Aerodynamik oder andere physikalische Eigenschaften, sowie ästhetische Kriterien, auf die ein Maß angewandt werden kann.In addition, weighting scale factors may be provided to emphasize or mitigate one or more of the selected limitations in the method of measuring the suitability of the fabricated structure in accordance with the disclosed techniques. The above list of limitations is provided by way of example and is not intended to be exhaustive. Any restriction that can be efficiently evaluated can potentially be used to guide the process, including aerodynamics or other physical properties, as well as aesthetic criteria to which a measure can be applied.
Das Prozedurerzeugungsmodul
Die Regel
Zusätzlich zu Verbindungsregeln können die VRG-Systeme Eigenschaftsparameter der Scheitelpunkte festlegen. In einigen Ausführungsformen umfassen diese Parameter das Aktiv/Inaktiv-Zustandskennzeichen und die Rekursionsgrenze, wie sie vorstehend erwähnt worden sind, sowie einen Orthonormalsatz von Vektoren zum Festlegen des Koordinatensystems des Scheitelpunkts, und von Radien von Zylindern und Kugeln, die bei der Erzeugung der Grundgerüstgeometrie verwendet werden sollen, wie es nachstehend beschrieben ist. Jedwede Anzahl von anderen geeigneten Parametern oder Eigenschaften kann ebenfalls einbezogen werden.In addition to connection rules, the VRG systems can set property parameters of the vertices. In some embodiments, these parameters include the active / inactive state flag and the recursion boundary as mentioned above, as well as an orthonormal set of vectors for defining the coordinate system of the apex, and radii of cylinders and spheres used in generating the skeletal geometry should be as described below. Any number of other suitable parameters or properties may also be included.
In einigen Ausführungsformen kann das Prozedurerzeugungsmodul
Die
Als nächstes wird bei
Als nächstes wird bei
Als nächstes wird bei 420f die Regel
Im Betrieb arbeitet das Prozeduranwendungsmodul
Das Grundgerüstgeometrie-Erzeugungsmodul
Das Optimierungsmodul
Das genetisches Programmieren-Modul
Ein ausgewählter Bruchteil, wie z.B. zehn Prozent, der Regelgraphen der am höchsten bewerteten VRG-Systeme wird Graph-Überschneidungen unterzogen. Das Graph-Überschneidungsverfahren ist in der
In einigen Ausführungsformen führt das genetisches Programmieren-Modul
Die
Im Beispiel
Im Beispiel
Verfahrensweiseprocedure
Die
Das Verfahren fährt bei dem Vorgang
Das Verfahren fährt bei dem Vorgang
Als nächstes werden bei dem Vorgang
Bei dem Vorgang
Bei dem Vorgang
In einigen Ausführungsformen werden zusätzliche Vorgänge durchgeführt. Beispielsweise werden in einer Ausführungsform anfängliche Ergebnisse für den Nutzer bereitgestellt und eine Rückmeldung wird für das Einbeziehen in das iterative Verfahren erhalten. Die Nutzerrückmeldung kann aktualisierte Beschränkungen, aktualisierte Gewichtungsfaktoren für die Beschränkungen und aktualisierte Interaktionsoberflächen umfassen.In some embodiments, additional operations are performed. For example, in one embodiment, initial results are provided to the user, and feedback is obtained for inclusion in the iterative process. The user feedback may include updated restrictions, updated weighting factors for the restrictions, and updated interaction surfaces.
Beispielplattform example platform
Die
Die Rechenplattform
Die Rechenplattform
Wie es ferner ersichtlich ist, ist auch eine Verbindungseinrichtung
In einigen Ausführungsformen interagiert ein Nutzer mit der Rechenplattform
In einigen Ausführungsformen läuft auf der Rechenplattform
Wie es im Hinblick auf diese Offenbarung ersichtlich ist, können die verschiedenen Module und Komponenten des Systems, einschließlich das Prozedurerzeugungsmodul
In weiteren Ausführungsformen sind die funktionellen Komponenten/Module als Hardware implementiert, wie z.B. als Gateniveau-Logik (z.B. FPGA) oder als speziell aufgebauter Halbleiter (z.B. ASIC). Weitere Ausführungsformen sind mit einem Mikrocontroller mit einer Anzahl von Eingabe/Ausgabe-Ports zum Erhalten und Ausgeben von Daten und einer Anzahl von eingebetteten Routinen zum Durchführen der Funktionalität, die in dieser Offenbarung beschrieben ist, implementiert. In einem allgemeineren Sinn kann jedwede geeignete Kombination von Hardware, Software und Firmware verwendet werden, wie es ersichtlich ist.In further embodiments, the functional components / modules are implemented as hardware, such as e.g. as gate-level logic (e.g., FPGA) or as a custom-built semiconductor (e.g., ASIC). Other embodiments are implemented with a microcontroller having a number of input / output ports for receiving and outputting data and a number of embedded routines for performing the functionality described in this disclosure. In a more general sense, any suitable combination of hardware, software and firmware can be used, as will be apparent.
BeispielausführungsformenExample embodiments
Zahlreiche Beispielausführungsformen sind ersichtlich und hier beschriebene Merkmale können in jedweder Anzahl von Konfigurationen kombiniert werden.Numerous example embodiments are apparent and features described herein may be combined in any number of configurations.
Das Beispiel 1 umfasst ein Verfahren zum Erzeugen einer 3-dimensionalen (3D) Struktur. Das Verfahren umfasst: Erhalten, durch ein System auf Prozessorbasis, einer oder mehrerer Beschränkung(en), die für eine zu erzeugende 3D-Struktur relevant ist oder sind, wobei mindestens eine der einen oder der mehreren Beschränkung(en) von einer vorgesehenen Interaktionsoberfläche eines vorgegebenen 3D-Modells abgeleitet ist; und Erzeugen, durch das System auf Prozessorbasis, der 3D-Struktur unter Verwendung der einen oder der mehreren Beschränkung(en), einschließlich der vorgesehenen Interaktionsoberfläche des vorgegebenen 3D-Modells, durch eine iterative Anwendung eines genetischen Programmierens auf eine Mehrzahl von Scheitelpunkt-Regel-Graph (VRG)-Systemen zum Entwickeln der VRG-Systeme auf der Basis der Beschränkungen.Example 1 includes a method of creating a 3-dimensional (3D) structure. The method includes: obtaining, by a processor-based system, one or more constraints that are relevant to a 3D structure to be generated, wherein at least one of the one or more constraints is from a designated interaction surface of a derived from a predefined 3D model; and generating, by the processor-based system, the 3D structure using the one or more constraints, including the intended interaction surface of the given 3D model, by iteratively applying genetic programming to a plurality of vertex rules. Graph (VRG) systems for developing the VRG systems based on the constraints.
Das Beispiel 2 umfasst den Gegenstand von Beispiel 1, bei dem das Erzeugen ferner umfasst: Initialisieren, durch das System auf Prozessorbasis, der Mehrzahl von VRG-Systemen, wobei die VRG-Systeme zum Bereitstellen von Regeln ausgebildet sind, die Kantenverbindungen zwischen Scheitelpunkten und Eigenschaftsparameter der Scheitelpunkte festlegen; Anwenden, durch das System auf Prozessorbasis, der Regeln der VRG-Systeme auf einen Anfangssatz von Scheitelpunkten zum Erzeugen einer Mehrzahl von 3D-Graphen, wobei jeder der 3D-Graphen mit einem der VRG-Systeme assoziiert ist, wobei der Anfangssatz von Scheitelpunkten mit der vorgesehenen Interaktionsoberfläche des vorgegebenen 3D-Modells assoziiert ist; Erzeugen, durch das System auf Prozessorbasis, einer Mehrzahl von Grundgerüstgeometrien, wobei jede der Grundgerüstgeometrien mit einem der 3D-Graphen assoziiert ist; Berechnen, durch das System auf Prozessorbasis, einer objektiven Funktion für jede der Grundgerüstgeometrien, wobei die objektive Funktion zum Bewerten der Eignung der Grundgerüstgeometrien auf der Basis von vorgegebenen Beschränkungen ausgebildet ist, wobei die vorgegebenen Beschränkungen die Interaktionsoberfläche des vorgegebenen 3D-Modells umfassen; und Erzeugen, durch das System auf Prozessorbasis, der 3D-Struktur durch eine iterative Anwendung des genetischen Programmierens auf einen ausgewählten Teilsatz der Mehrzahl von VRG-Systemen, wobei das genetische Programmieren zum Minimieren der objektiven Funktion iteriert.Example 2 includes the subject matter of Example 1, wherein generating further comprises: initializing, by the processor-based system, the plurality of VRG systems, wherein the VRG systems are configured to provide rules, the edge connections between vertices and property parameters set the vertices; Applying, by the processor-based system, the rules of the VRG systems to an initial set of vertices for generating a plurality of 3D graphs, wherein each of the 3D graphs is associated with one of the VRG systems, wherein the initial set of vertices is the one of the VRG systems provided interaction surface of the given 3D model is associated; Generating, by the processor-based system, a plurality of skeletal geometries, each of the Skeletal geometries associated with one of the 3D graphs; Calculating, by the processor-based system, an objective function for each of the skeletal geometries, wherein the objective function for evaluating the fitness of the skeleton geometries is based on predetermined constraints, the predetermined constraints comprising the interaction surface of the given 3D model; and generating, by the processor-based system, the 3D structure through an iterative application of genetic programming to a selected subset of the plurality of VRG systems, wherein the genetic programming iterates to minimize the objective function.
Das Beispiel 3 umfasst den Gegenstand von Beispiel 1 oder 2, bei dem das genetische Programmieren ferner das Durchführen von Graph-Überschneidungen der VRG-Systeme und das Anwenden von Mutationen auf die Regeln und Scheitelpunkte der VRG-Systeme umfasst.Example 3 includes the subject matter of Example 1 or 2, wherein the genetic programming further comprises performing graph overlaps of the VRG systems and applying mutations to the rules and vertices of the VRG systems.
Das Beispiel 4 umfasst den Gegenstand von einem der Beispiele 1 bis 3, bei dem das Initialisieren ferner das Initialisieren der Regeln der Mehrzahl von VRG-Systemen mit randomisierten Verbindungen zwischen den Scheitelpunkten und mit randomisierten Eigenschaftsparametern der Scheitelpunkte umfasst, wobei das Initialisieren vor einer ersten Iteration des Verfahrens durchgeführt wird.Example 4 includes the subject matter of any one of Examples 1 to 3, wherein the initializing further comprises initializing the rules of the plurality of VRG systems with randomized interconnections between the vertices and with randomized property parameters of the vertices, wherein the initialization is prior to a first iteration of the procedure is carried out.
Das Beispiel 5 umfasst den Gegenstand von einem der Beispiele 1 bis 4, bei dem die VRG-Systemregeln, die Kantenverbindungen zwischen Scheitelpunkten festlegen, mindestens eines von einem Richtungsparameter, einem Distanzparameter, einem Rekursionsgrenze-Parameter und einem Symmetriekennzeichen umfassen.Example 5 includes the subject matter of any one of Examples 1 to 4, wherein the VRG system rules defining edge connections between vertices comprise at least one of a direction parameter, a distance parameter, a recursion limit parameter, and a symmetry flag.
Das Beispiel 6 umfasst den Gegenstand von einem der Beispiele 1 bis 5, bei dem die VRG-Systemregeln, die Eigenschaftsparameter der Scheitelpunkte festlegen, mindestens eines von einem Aktiv/Inaktiv-Zustandskennzeichen des Scheitelpunkts, von Orthonormalvektoren, die ein Koordinatensystem des Scheitelpunkts festlegen, und Rekursionszählern für jede der Regeln, die auf den Scheitelpunkt angewandt werden sollen, umfassen.Example 6 includes the subject matter of any one of Examples 1 to 5, wherein the VRG system rules defining vertex property parameters, at least one of vertex active / inactive state flags, orthonormal vectors defining a vertex coordinate system, and Recursion counters for each of the rules to be applied to the vertex.
Das Beispiel 7 umfasst den Gegenstand von einem der Beispiele 1 bis 6, bei dem das Erzeugen der Grundgerüstgeometrien ferner das Ersetzen der Kantenverbindungen der 3D-Graphen durch Zylinder und das Ersetzen der Scheitelpunkte der 3D-Graphen durch Kugeln umfasst.Example 7 includes the subject matter of any one of Examples 1 to 6, wherein generating the skeletal geometries further comprises replacing the edges of the 3D graphs by cylinders and replacing the vertices of the 3D graphs with spheres.
Das Beispiel 8 umfasst den Gegenstand von einem der Beispiele 1 bis 7, bei dem die Beschränkungen ferner mindestens eines von einem Anpassungsvolumen, einem Vermeidungsvolumen, einer Symmetrieanforderung, einer maximalen Gesamtlänge der Kantenverbindungen und einer maximalen Masse der 3D-Struktur umfassen.Example 8 includes the subject matter of any one of Examples 1 to 7, wherein the constraints further include at least one of a fitting volume, an avoidance volume, a symmetry requirement, a maximum total length of the edge connections, and a maximum mass of the 3D structure.
Das Beispiel 9 umfasst den Gegenstand von einem der Beispiele 1 bis 8, ferner umfassend: Darstellen der erzeugten 3D-Struktur zum Anzeigen; Erhalten von einer oder mehreren aktualisierten Beschränkung(en), einschließlich eine oder mehrere aktualisierte Interaktionsoberfläche(n); Erhalten von Gewichtungsfaktoren, die mit den Beschränkungen assoziiert sind, welche die eine oder mehreren aktualisierte(n) Beschränkung(en) umfassen; und Iterieren des Verfahrens unter Verwendung der Gewichtungsfaktoren und der einen oder der mehreren aktualisierten Beschränkung(en).Example 9 includes the subject matter of any one of Examples 1 through 8, further comprising: displaying the generated 3D structure for display; Receiving one or more updated restriction (s), including one or more updated interaction surfaces; Obtaining weighting factors associated with the constraints comprising the one or more updated constraints; and iterating the method using the weighting factors and the one or more updated constraints.
Das Beispiel 10 ist ein System zum Erzeugen einer 3-dimensionalen (3D) Struktur. Das System umfasst: einen oder mehrere Prozessor(en); ein Prozedurerzeugungsmodul, das mindestens eines von durch den einen oder die mehreren Prozessor(en) steuerbar und ausführbar ist und zum Initialisieren einer Mehrzahl von Scheitelpunkt-Regel-Graph (VRG)-Systemen ausgebildet ist, wobei die VRG-Systeme zum Bereitstellen von Regeln ausgebildet sind, die Kantenverbindungen zwischen Scheitelpunkten und Eigenschaftsparameter der Scheitelpunkte festlegen; ein Prozeduranwendungsmodul, das mindestens eines von durch den einen oder die mehreren Prozessor(en) steuerbar und ausführbar ist und zum Anwenden der Regeln der VRG-Systeme auf einen Anfangssatz von Scheitelpunkten zum Erzeugen einer Mehrzahl von 3D-Graphen anwendbar ist, wobei jeder der 3D-Graphen mit einem der VRG-Systeme assoziiert ist, wobei der Anfangssatz von Scheitelpunkten mit einer vorgesehenen Interaktionsoberfläche eines 3D-Modells assoziiert ist; ein Grundgerüstgeometrie-Erzeugungsmodul, das mindestens eines von durch den einen oder die mehreren Prozessor(en) steuerbar und ausführbar ist und zum Erzeugen einer Mehrzahl von Grundgerüstgeometrien ausgebildet ist, wobei jede der Grundgerüstgeometrien mit einem der 3D-Graphen assoziiert ist; ein Optimierungsmodul, das mindestens eines von durch den einen oder die mehreren Prozessor(en) steuerbar und ausführbar ist und zum Berechnen einer objektiven Funktion für jede der Grundgerüstgeometrien ausgebildet ist, wobei die objektive Funktion zum Bewerten der Eignung der Grundgerüstgeometrien auf der Basis von vorgegebenen Beschränkungen ausgebildet ist, wobei die vorgegebenen Beschränkungen mindestens eines von einem Anpassungsvolumen, einem Vermeidungsvolumen, einer Symmetrieanforderung, der Interaktionsoberflächen, einer maximalen Gesamtlänge der Kantenverbindungen und einer maximalen Masse der 3D-Struktur umfassen; und ein genetisches Programmieren-Modul, das mindestens eines von durch den einen oder die mehreren Prozessor(en) steuerbar und ausführbar ist und zum Erzeugen der 3D-Struktur durch eine iterative Anwendung eines genetischen Programmierens auf einen ausgewählten Teilsatz der Mehrzahl von VRG-Systemen ausgebildet ist, wobei das genetische Programmieren zum Minimieren der objektiven Funktion iteriert, wobei das genetische Programmieren-Modul ferner zum Durchführen von Graph-Überschneidungen der VRG-Systeme und zum Anwenden von Mutationen auf die Regeln und Scheitelpunkte der VRG-Systeme ausgebildet ist.Example 10 is a system for generating a 3-dimensional (3D) structure. The system includes: one or more processors; a procedure generation module comprising at least one of the one or more Processor (s) is controllable and executable and configured to initialize a plurality of vertex rule graph (VRG) systems, wherein the VRG systems are adapted to provide rules defining edge connections between vertices and vertex property parameters; a procedure application module that is controllable and executable by at least one of the one or more processors and is applicable for applying the rules of the VRG systems to an initial set of vertices for generating a plurality of 3D graphs, each of the 3D Graph is associated with one of the VRG systems, wherein the initial set of vertices is associated with a designated interaction surface of a 3D model; a backbone geometry generation module that is controllable and executable by at least one of the one or more processors and configured to generate a plurality of backbone geometries, wherein each of the backbone geometries is associated with one of the 3D graphs; an optimization module that is controllable and executable by at least one of the one or more processors and configured to calculate an objective function for each of the skeletal geometries, the objective function for evaluating the fitness of the skeleton geometries based on predetermined constraints wherein the predetermined constraints include at least one of a fitting volume, an avoidance volume, a symmetry requirement, the interaction surfaces, a maximum total length of the edge connections, and a maximum mass of the 3D structure; and a genetic programming module that is controllable and executable by at least one of the one or more processors and configured to generate the 3D structure by iteratively applying genetic programming to a selected subset of the plurality of VRG systems wherein the genetic programming iterates to minimize the objective function, wherein the genetic programming module is further adapted to perform graph intersections of the VRG systems and to apply mutations to the rules and vertices of the VRG systems.
Das Beispiel 11 umfasst den Gegenstand von Beispiel 10, bei dem das Prozedurerzeugungsmodul ferner zum Initialisieren der Regeln der Mehrzahl von VRG-Systemen mit randomisierten Verbindungen zwischen den Scheitelpunkten und mit randomisierten Eigenschaftsparametern der Scheitelpunkte ausgebildet ist, wobei das Initialisieren vor einer ersten Iteration des genetischen Programmierens durchgeführt wird.Example 11 includes the subject matter of Example 10, wherein the procedure generation module is further configured to initialize the rules of the plurality of VRG systems with randomized interconnections between the vertices and with randomized property parameters of the vertices, wherein the initialization is prior to a first iteration of genetic programming is carried out.
Das Beispiel 12 umfasst den Gegenstand von Beispiel 10 oder 11, bei dem die VRG-Systemregeln Kantenverbindungen zwischen Scheitelpunkten festlegen, die mindestens eines von einem Richtungsparameter, einem Distanzparameter, einem Rekursionsgrenze-Parameter und einem Symmetriekennzeichen umfassen; und die VRG-Systemregeln, die Eigenschaftsparameter der Scheitelpunkte festlegen, mindestens eines von einem Aktiv/Inaktiv-Zustandskennzeichen des Scheitelpunkts, von Orthonormalvektoren, die ein Koordinatensystem des Scheitelpunkts festlegen, und von Rekursionszählern für jede der Regeln, die auf den Scheitelpunkt angewandt werden sollen, umfassen.Example 12 includes the subject matter of Example 10 or 11, wherein the VRG system rules define edge connections between vertices comprising at least one of a direction parameter, a distance parameter, a recursion limit parameter, and a symmetry flag; and the VRG system rules defining vertex property parameters, at least one of vertex active / inactive state flags, orthonormal vectors specifying a vertex coordinate system, and recursion counters for each of the rules to be applied to the vertex; include.
Das Beispiel 13 ist ein nicht-flüchtiges Computerprogrammprodukt, auf dem Anweisungen kodiert sind, die, wenn sie durch den einen oder die mehreren Computerprozessor(en) ausgeführt werden, bewirken, dass der eine oder die mehreren Computerprozessor(en) ein Verfahren durchführt oder durchführen, umfassend: Erhalten einer oder mehrerer Beschränkung(en), die für eine zu erzeugende 3D-Struktur relevant sind, wobei mindestens eine der einen oder der mehreren Beschränkung(en) von einer vorgesehenen Interaktionsoberfläche eines vorgegebenen 3D-Modells abgeleitet sind; und Erzeugen der 3D-Struktur unter Verwendung der einen oder der mehreren Beschränkung(en), einschließlich die vorgesehene Interaktionsoberfläche des vorgegebenen 3D-Modells, durch eine iterative Anwendung eines genetischen Programmierens auf eine Mehrzahl von Scheitelpunkt-Regel-Graph (VRG)-Systemen zum Entwickeln der VRG-Systeme auf der Basis der Beschränkungen.Example 13 is a non-transitory computer program product encoded with instructions that, when executed by the one or more computer processors, cause the one or more computer processors to perform or perform a method method comprising: obtaining one or more constraints relevant to a 3D structure to be generated, wherein at least one of the one or more constraints are derived from an intended interaction surface of a given 3D model; and generating the 3D structure using the one or more constraints, including the intended interaction surface of the given 3D model, by iteratively applying genetic programming to a plurality of vertex rule graph (VRG) systems Develop the VRG systems based on the limitations.
Das Beispiel 14 umfasst den Gegenstand von Beispiel 13, bei dem das Erzeugen ferner umfasst: Initialisieren der Mehrzahl von VRG-Systemen, wobei die VRG-Systeme zum Bereitstellen von Regeln ausgebildet sind, die Kantenverbindungen zwischen Scheitelpunkten und Eigenschaftsparametern der Scheitelpunkte festlegen; Anwenden der Regeln der VRG-Systeme auf einen Anfangssatz von Scheitelpunkten zum Erzeugen einer Mehrzahl von 3D-Graphen, wobei jeder der 3D-Graphen mit einem der VRG-Systeme assoziiert ist, wobei der Anfangssatz der Scheitelpunkte mit der vorgesehenen Interaktionsoberfläche des vorgegebenen 3D-Modells assoziiert ist; Erzeugen einer Mehrzahl von Grundgerüstgeometrien, wobei jede der Grundgerüstgeometrien mit einem der 3D-Graphen assoziiert ist; Berechnen einer objektiven Funktion für jede der Grundgerüstgeometrien, wobei die objektive Funktion zum Bewerten der Eignung der Grundgerüstgeometrien auf der Basis von vorgegebenen Beschränkungen ausgebildet ist, wobei die vorgegebenen Beschränkungen die Interaktionsoberfläche des vorgegebenen 3D-Modells umfassen; und Erzeugen der 3D-Struktur durch eine iterative Anwendung eines genetischen Programmierens auf einen ausgewählten Teilsatz der Mehrzahl von VRG-Systemen, wobei das genetische Programmieren zum Minimieren der objektiven Funktion iteriert.Example 14 includes the subject matter of Example 13, wherein generating further comprises: initializing the plurality of VRG systems, wherein the VRG systems are configured to provide rules defining edge connections between vertices and property parameters of the vertices; Applying the rules of the VRG systems to an initial set of vertices for generating a plurality of 3D graphs, each of the 3D graphs being associated with one of the VRG systems, the initial set of vertices having the intended interaction surface of the given 3D model is associated; Generating a plurality of skeletal geometries, each of the skeletal geometries associated with one of the 3D graphs; Calculating an objective function for each of the skeletal geometries, wherein the objective function for evaluating the fitness of the skeleton geometries is based on predetermined constraints, the predetermined constraints comprising the interaction surface of the given 3D model; and generating the 3D structure by iteratively applying genetic programming to a selected subset of the plurality of VRG systems, wherein the genetic programming iterates to minimize the objective function.
Das Beispiel 15 umfasst den Gegenstand von Beispiel 13 oder 14, bei dem das genetische Programmieren ferner das Durchführen von Graph-Überschneidungen der VRG-Systeme und das Anwenden von Mutationen auf die Regeln und Scheitelpunkte der VRG-Systeme umfasst.Example 15 includes the subject matter of Example 13 or 14, wherein the genetic programming further comprises performing graph overlaps of the VRG systems and applying mutations to the rules and vertices of the VRG systems.
Das Beispiel 16 umfasst den Gegenstand von einem der Beispiele 13 bis 15, bei dem das Initialisieren ferner das Initialisieren der Regeln der Mehrzahl von VRG-Systemen mit randomisierten Verbindungen zwischen den Scheitelpunkten und mit randomisierten Eigenschaftsparametern der Scheitelpunkte umfasst, wobei das Initialisieren vor einer ersten Iteration des Verfahrens durchgeführt wird.Example 16 includes the subject matter of any one of Examples 13 to 15, wherein the initializing further comprises initializing the rules of the plurality of VRG systems with randomized interconnections between the vertices and with randomized property parameters of the vertices, wherein the initialization is prior to a first iteration of the procedure is carried out.
Das Beispiel 17 umfasst den Gegenstand von einem der Beispiele 13 bis 16, bei dem die VRG-Systemregeln, die Kantenverbindungen zwischen Scheitelpunkten festlegen, mindestens eines von einem Richtungsparameter, einem Distanzparameter, einem Rekursionsgrenze-Parameter und einem Symmetriekennzeichen umfassen.Example 17 includes the subject matter of any one of Examples 13 to 16, wherein the VRG system rules defining edge connections between vertices comprise at least one of a direction parameter, a distance parameter, a recursion boundary parameter, and a symmetry flag.
Das Beispiel 18 umfasst den Gegenstand von einem der Beispiele 13 bis 17, bei dem die VRG-Systemregeln, die Eigenschaftsparameter der Scheitelpunkte festlegen, mindestens eines von einem Aktiv/Inaktiv-Zustandskennzeichen des Scheitelpunkts, von Orthonormalvektoren, die ein Koordinatensystem des Scheitelpunkts festlegen, und von Rekursionszählern für jede der Regeln, die auf den Scheitelpunkt angewandt werden sollen, umfassen.Example 18 includes the subject matter of any one of Examples 13 to 17, wherein the VRG system rules defining vertex property parameters, at least one of vertex active / inactive state flags, orthonormal vectors defining a vertex coordinate system, and of recursion counters for each of the rules to be applied to the vertex.
Das Beispiel 19 umfasst den Gegenstand von einem der Beispiele 13 bis 18, bei dem das Erzeugen der Grundgerüstgeometrien ferner das Ersetzen der Kantenverbindungen der 3D-Graphen durch Zylinder und das Ersetzen der Scheitelpunkte der 3D-Graphen durch Kugeln umfasst.Example 19 includes the subject matter of any one of Examples 13 to 18, wherein generating the skeletal geometries further comprises replacing the edges of the 3D graphs with cylinders and replacing the vertices of the 3D graphs with spheres.
Das Beispiel 20 umfasst den Gegenstand von einem der Beispiele 13 bis 19, bei dem die Beschränkungen ferner mindestens eines von einem Anpassungsvolumen, einem Vermeidungsvolumen, einer Symmetrieanforderung, einer maximalen Gesamtlänge der Kantenverbindungen und einer maximalen Masse der 3D-Struktur umfassen.Example 20 includes the subject matter of any one of Examples 13-19, wherein the constraints further include at least one of a fitting volume, an avoidance volume, a symmetry requirement, a maximum total length of the edge connections, and a maximum mass of the 3D structure.
Die vorstehende Beschreibung von Beispielausführungsformen der Offenbarung wurde für die Zwecke der Veranschaulichung und Beschreibung angegeben. Sie soll nicht erschöpfend sein oder die Offenbarung auf die genauen offenbarten Formen beschränken. Viele Modifizierungen und Variationen sind im Hinblick auf diese Offenbarung möglich. Der Umfang der Offenbarung soll nicht durch diese detaillierte Beschreibung beschränkt sein, sondern vielmehr durch die beigefügten Ansprüche.The foregoing description of example embodiments of the disclosure has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the disclosure to the precise forms disclosed. Many modifications and variations are possible in light of this disclosure. The scope of the disclosure should not be limited by this detailed description, but rather by the appended claims.
Claims (20)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/825,959 | 2017-11-29 | ||
US15/825,959 US11244502B2 (en) | 2017-11-29 | 2017-11-29 | Generating 3D structures using genetic programming to satisfy functional and geometric constraints |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102018007145A1 true DE102018007145A1 (en) | 2019-05-29 |
Family
ID=64013122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102018007145.7A Pending DE102018007145A1 (en) | 2017-11-29 | 2018-09-10 | Create 3D structures using genetic programming to meet functional and geometric constraints |
Country Status (5)
Country | Link |
---|---|
US (1) | US11244502B2 (en) |
CN (1) | CN109840936B (en) |
AU (1) | AU2018226401B2 (en) |
DE (1) | DE102018007145A1 (en) |
GB (1) | GB2568993B (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11132403B2 (en) | 2019-09-06 | 2021-09-28 | Digital Asset Capital, Inc. | Graph-manipulation based domain-specific execution environment |
US10990879B2 (en) * | 2019-09-06 | 2021-04-27 | Digital Asset Capital, Inc. | Graph expansion and outcome determination for graph-defined program states |
CN115107280B (en) * | 2022-06-24 | 2024-07-16 | 重庆大学 | Voronoi porous structure intelligent generation method |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000057184A (en) * | 1998-08-06 | 2000-02-25 | Nissan Motor Co Ltd | Method for generating three-dimensional shape model |
US6898560B1 (en) * | 1999-06-02 | 2005-05-24 | Solidworks Corporation | Maintaining a computer-generated design model |
US20040177139A1 (en) * | 2003-03-03 | 2004-09-09 | Schuba Christoph L. | Method and apparatus for computing priorities between conflicting rules for network services |
US20080172208A1 (en) * | 2006-12-28 | 2008-07-17 | Dassault Systems | Method and computer program product of computer aided design of a product comprising a set of constrained objects |
EP2031564B1 (en) * | 2007-06-25 | 2018-08-29 | Dassault Systèmes | Method of computer-aided design of a 3D object modeled by geometries |
US8253726B1 (en) * | 2008-01-09 | 2012-08-28 | Spaceclaim Corporation, Inc. | Systems and methods for modifying three dimensional geometry using an arbitrary cross-section plane |
US20130013534A1 (en) * | 2011-07-07 | 2013-01-10 | International Business Machines Corporation | Hardware-assisted approach for local triangle counting in graphs |
US20130346294A1 (en) * | 2012-03-21 | 2013-12-26 | Patrick Faith | Risk manager optimizer |
CN102664787B (en) * | 2012-04-01 | 2014-10-08 | 华为技术有限公司 | Generation method of decision tree and device thereof |
CN107315760B (en) * | 2012-04-05 | 2021-01-26 | 微软技术许可有限责任公司 | Platform for continuum map updates and computations |
US20140324204A1 (en) * | 2013-04-18 | 2014-10-30 | Massachusetts Institute Of Technology | Methods and apparati for implementing programmable pipeline for three-dimensional printing including multi-material applications |
EP2811463B1 (en) * | 2013-06-04 | 2018-11-21 | Dassault Systèmes | Designing a 3d modeled object with 2d views |
FR3010812A1 (en) * | 2013-09-13 | 2015-03-20 | Eads Europ Aeronautic Defence | COMPUTER-ASSISTED DESIGN METHOD COMPRISING A MODELING STEP |
EP2921978B1 (en) * | 2014-03-19 | 2021-09-29 | Dassault Systèmes | Designing industrial products by using geometries connected by geometrical constraints |
CN103942795B (en) * | 2014-04-22 | 2016-08-24 | 浙江大学 | A kind of structuring synthetic method of image object |
US10372713B1 (en) * | 2014-07-10 | 2019-08-06 | Purdue Pharma L.P. | Chemical formula extrapolation and query building to identify source documents referencing relevant chemical formula moieties |
CN104183008B (en) | 2014-07-31 | 2017-01-18 | 浙江大学 | Shader classification method and device based on surface signal fitting and tessellation and graphics rendering method |
WO2016049729A1 (en) * | 2014-09-30 | 2016-04-07 | Cae Inc. | Rendering plausible images of 3d polygon meshes |
US9418477B2 (en) * | 2014-09-30 | 2016-08-16 | Cae Inc. | Rendering damaged-enhanced images in a computer simulation |
CN106663411A (en) * | 2014-11-16 | 2017-05-10 | 易欧耐特感知公司 | Systems and methods for augmented reality preparation, processing, and application |
CN104504177A (en) * | 2014-12-04 | 2015-04-08 | 上海海事大学 | Method for quickly configuring and designing large container crane |
EP3032495B1 (en) * | 2014-12-10 | 2019-11-13 | Dassault Systèmes | Texturing a 3d modeled object |
EP3179389B1 (en) * | 2015-12-07 | 2019-05-22 | Dassault Systèmes | Detecting cut-outs |
WO2017113260A1 (en) * | 2015-12-30 | 2017-07-06 | 中国科学院深圳先进技术研究院 | Three-dimensional point cloud model re-establishment method and apparatus |
US20170312634A1 (en) * | 2016-04-28 | 2017-11-02 | Uraniom | System and method for personalized avatar generation, especially for computer games |
US10229533B2 (en) * | 2016-11-03 | 2019-03-12 | Mitsubishi Electric Research Laboratories, Inc. | Methods and systems for fast resampling method and apparatus for point cloud data |
US10839585B2 (en) * | 2018-01-05 | 2020-11-17 | Vangogh Imaging, Inc. | 4D hologram: real-time remote avatar creation and animation control |
-
2017
- 2017-11-29 US US15/825,959 patent/US11244502B2/en active Active
-
2018
- 2018-09-04 AU AU2018226401A patent/AU2018226401B2/en active Active
- 2018-09-10 DE DE102018007145.7A patent/DE102018007145A1/en active Pending
- 2018-09-14 GB GB1814952.6A patent/GB2568993B/en active Active
- 2018-09-14 CN CN201811074580.3A patent/CN109840936B/en active Active
Also Published As
Publication number | Publication date |
---|---|
AU2018226401B2 (en) | 2021-11-11 |
US11244502B2 (en) | 2022-02-08 |
CN109840936B (en) | 2023-10-17 |
GB201814952D0 (en) | 2018-10-31 |
CN109840936A (en) | 2019-06-04 |
GB2568993B (en) | 2021-05-19 |
AU2018226401A1 (en) | 2019-06-13 |
US20190164342A1 (en) | 2019-05-30 |
GB2568993A (en) | 2019-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112018006189T5 (en) | ROBUST GRADIENT WEIGHT COMPRESSION SCHEMES FOR DEEP LEARNING APPLICATIONS | |
DE112019005750T5 (en) | Learning to generate synthetic data sets for training neural networks | |
DE68927781T2 (en) | Geometric modeling process and device | |
DE60008397T2 (en) | USER EMULATION FOR DATA EXCHANGE IN COMPUTER-BASED DESIGN | |
DE102020000810A1 (en) | 3D object reconstruction using a photometric network representation | |
DE112006000938T5 (en) | Dynamic solution finder with fixed time step size for interacting particle systems | |
DE102018007145A1 (en) | Create 3D structures using genetic programming to meet functional and geometric constraints | |
DE102005010169A1 (en) | Active polyhedron for 3D image segmentation | |
DE102008034518B4 (en) | A method of constructing a surface of a particle method based fluid body simulation and storage medium having a program therefor | |
DE602004011749T2 (en) | Envelope deformation using subdivided surfaces | |
DE112016007331T5 (en) | GENERATING DATA FOR A THREE-DIMENSIONAL (3D) PRINTABLE OBJECT | |
DE102017007967A1 (en) | Process and render a three-dimensional model | |
DE202020005498U1 (en) | Device for class-sensitive adversarial lung nodule synthesis | |
DE102018005610A1 (en) | Diffusion dyeing using weighted color dots | |
DE102019005517A1 (en) | Automatic and interactive animation driven by change-based heuristics | |
DE602004008102T2 (en) | THREE-DIMENSIONAL SEGMENTATION THROUGH THE USE OF DEFORMABLE SURFACES | |
DE69800321T2 (en) | Infinite electromagnetic 3-D element | |
DE102009042326A1 (en) | Interactively changing the appearance of an object represented by volume rendering | |
DE112016007098T5 (en) | INDEXING VOXELS FOR 3D PRINTING | |
DE202016009145U1 (en) | Deep learning based functional correlation of volumetric designs | |
DE112018000347T5 (en) | Method and system for automatic generation of constrained graphs for computer graphics | |
DE112019002095T5 (en) | TECHNIQUES FOR VISUALIZATION AND PROBING OF LARGE-VOLUME GENERATIVE DESIGN DATA SETS | |
DE102014006549B4 (en) | Technique for processing a character string for graphical representation at a human-machine interface | |
DE102022112888A1 (en) | User interfaces and methods for creating a new artifact based on existing artifacts | |
DE60320453T2 (en) | METHOD FOR SEGMENTING A THREE-DIMENSIONAL DATA RECORD WITH USER CORRECTIONS |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R082 | Change of representative |
Representative=s name: MUELLER-BORE & PARTNER PATENTANWAELTE PARTG MB, DE |
|
R012 | Request for examination validly filed |