WO2023102583A1 - Method for additively manufacturing a workpiece - Google Patents

Method for additively manufacturing a workpiece Download PDF

Info

Publication number
WO2023102583A1
WO2023102583A1 PCT/AT2022/060421 AT2022060421W WO2023102583A1 WO 2023102583 A1 WO2023102583 A1 WO 2023102583A1 AT 2022060421 W AT2022060421 W AT 2022060421W WO 2023102583 A1 WO2023102583 A1 WO 2023102583A1
Authority
WO
WIPO (PCT)
Prior art keywords
point
edge
base
data set
manufacturing
Prior art date
Application number
PCT/AT2022/060421
Other languages
German (de)
French (fr)
Inventor
Mehmet Buğra AKIN
Original Assignee
Akin Mehmet Bugra
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Akin Mehmet Bugra filed Critical Akin Mehmet Bugra
Publication of WO2023102583A1 publication Critical patent/WO2023102583A1/en

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B29WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
    • B29CSHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
    • B29C64/00Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
    • B29C64/30Auxiliary operations or equipment
    • B29C64/386Data acquisition or data processing for additive manufacturing
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B33ADDITIVE MANUFACTURING TECHNOLOGY
    • B33YADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
    • B33Y50/00Data acquisition or data processing for additive manufacturing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/21Collision detection, intersection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/008Cut plane or projection plane definition

Definitions

  • the invention relates to a method for determining manufacturing contours for the additive manufacturing of a workpiece using a model having point data sets with spatial coordinates of the corner points of triangular facets, with manufacturing contours being determined on predetermined manufacturing planes, the point data sets being provided with a consecutive point index and together with this stored in a point memory by a computing unit and then an edge data record is repeatedly generated from the point indices of a base point and an adjacent edge point and stored in an edge memory.
  • the manufacturing plane After each manufacturing plane has its edges assigned, the manufacturing plane is intersected with the edges and the intersection points that bound the manufacturing contours are determined.
  • the disadvantage of the prior art is that several steps that slow down the process are absolutely necessary: First, the manufacturing planes must be successively assigned to the edges, so that all intersection points on a manufacturing plane can only be clearly determined when a manufacturing plane has been assigned to all edges. Furthermore, with the hash table and the triangular facets, another data structure and additional information for the spatial assignment of an edge to a production level must be processed, and data must also be transferred between the CPU and the GPU.
  • the invention is therefore based on the object of reducing the time and work involved in determining the manufacturing contour on one manufacturing level, so that further manufacturing contours can be determined in parallel with the additive method.
  • the invention solves the problem in that at least the point index of a corner point is added to the edge data record, which together with the base point and the edge point forms a triangular facet, after which an initial intersection point of a specified production plane with an edge running between the base point and the edge point of a selected edge data record is determined and stored together with its spatial coordinates as a contour data record in a contour data memory, after which in an iteration step a further intersection point between the specified production plane and a cut edge spanned from the base point or from the edge point and a further corner point of the selected edge data record is determined and together with its spatial coordinates as a contour data record is stored in the contour data memory, the iteration step being repeated with the selected edge data set whose base point and edge point delimit the cut edge, after which the contour data sets stored in the contour data memory are output as manufacturing contours.
  • the The amount of work required to determine the next intersection point can be significantly reduced, since all edges no longer have to be formed between all adjacent corner points and checked for a possible intersection with the production plane, but only those edges that have a common corner point with the edge that has just been cut. This is made possible by the fact that an edge data record is created for every two adjacent corner points, in which, in addition to the two adjacent corner points delimiting the edge, at least one of the two corner points is also stored, with which the corner points delimiting the edge form a triangular facet. Since at most two triangle facets can share an edge, at most four edges need to be checked for an intersection.
  • checking means that the spatial coordinates of these corner points are read out of the point memory from the point indices of two adjacent corner points and the edge is then determined vectorially from these, which corresponds to the segment delimited by these points. It is then checked whether this line intersects with the production plane, whose plane equation is known. This point of intersection is stored with its spatial coordinates in the contour data record. Intersections can now be determined until the initial intersection has been found again, since a closed production contour can be formed between the intersections.
  • edge data record can be stored in the edge memory for each edge. Since each edge is delimited by a base point and an edge point, a second edge data set can be formed for the same edge via a permutation by dividing the base point with the edge point is exchanged and vice versa. However, only one edge data set is required per edge to carry out the method, so that the second edge data set is not stored in the edge memory, which means that the method can be accelerated. This can be done, for example, by storing the base point X in the first place in the edge data set and the edge point Y in the second place, with the two corner points being stored as XY in the edge data set. Every time a new edge data set is formed, it can be checked whether the new edge data set is a permutation of an old data set, ie YX in this example. If this is the case, the new edge data record is not stored in the edge memory.
  • the resources required for the method can be further reduced if the base point of each edge data record has a higher or lower point index than the edge point of the respective edge data record. Since each edge can in principle be described with two edge data records, these measures result in a unique edge data record, where the base point of the edge record has a higher or lower point index than the edge point of the edge record is defined for each edge. In both cases, it is important that this assignment is uniform for all edge data sets. This measure not only makes it easier to ensure clear edges, but also specifies a defined direction for the individual edges, namely from the base point to the edge point or vice versa. As a result, the edge is not only described as a segment, but also as a vector.
  • the model have facet data sets that include the surface normals of the triangle facets and that the edge data sets each have the point index of a preferred corner point added, which together with the base point forms a base vector spanned, whose cross product with the edge vector spanned by the base point and the edge point in or against the direction of the surface normal of the triangular facet delimited by the base vector and the edge vector.
  • a running direction can be defined independently of the position of the model to the production plane, provided that the surface normals of the triangle facets point to the same side of the surface they define.
  • the preferred corner point in the edge memory is therefore added to the edge data set at a predetermined storage position, which delimits a base vector whose cross product with the edge vector of the edge data set runs in or against the direction of the surface normal of the triangular facet delimited by the base vector and edge vector. Consequently, only the other two edges of the triangular facet formed with the preferred corner point are subsequently checked for points of intersection. It does not matter whether the cross product formed with the preferred vertex runs in or against the direction of the surface normal of the triangular facet delimited by the base vector and edge vector, as long as this direction assignment is uniform for all edge data sets.
  • the surface normals of the triangular facets are often predefined, as a result of which the running direction in which further points of intersection are formed starting from the initial point of intersection can be predetermined.
  • the point index of that further corner point is additionally added to the edge data sets, which together with the base point spans a base vector whose cross product with that of the base point and the edge point Edge vector runs against or in the direction of the surface normal of the triangular facet delimited by the base vector and edge vector.
  • the further corner point deviating therefrom, with which a further triangular facet can be formed is therefore added to the edge data set at a predetermined storage position. Due to the opposite course of the cross product formed with this further corner point to the surface normal of the triangular facet, the search for the intersection points runs in the opposite direction to the previous course.
  • the running direction can be specified either by the user or in an optional, automated process step are specified.
  • the provision of the preferred corner point and the further corner point in the edge data records has the advantage that the running direction of the production contours can also be selected differently within a production level.
  • the running direction of an outer contour can be mapped opposite to the running direction of an inner contour.
  • Further production contours can be determined by marking the edge data sets of cut edges and before the production contours are output, another initial intersection point of the specified production plane with an edge running between the base point and the edge point of a selected, unmarked edge data set and together with its spatial coordinates as a contour data set in the Contour data memory is stored, after which the iteration step is performed with the selected, unmarked edge data set.
  • edges that are not yet marked i.e. do not yet have any intersection points, have to be checked both for determining a further initial intersection point and for determining further intersection points, which speeds up the determination of the intersection points for these further contours.
  • the intersection points can be determined until the (further) initial intersection point has been found again...
  • the edge data records can be marked using a further marking data record in which each production level is assigned its marked edge data records.
  • Determining the initial intersection is resource-intensive compared to determining the remaining intersections, since a large number of edges have to be examined.
  • the edges are preselected and then checked for intersections that lie in the same layer as the production level. Since edge data sets can also exist whose base point and edge point are in different layers and consequently cannot be assigned to one layer, an additional layer can be provided to which these edge data sets are assigned.
  • Preprocessing step assigned all edge data sets of a layer before the initial intersection points for the individual production levels are preferably determined in parallel. If not a single edge data record can be assigned to a layer, the layer thickness can be increased in an optional method step until the base and edge points of at least one edge data record fall into the layer and the edge data record can thus be assigned.
  • An edge data record can be assigned to a layer via a further entry in the edge data record itself. Alternatively or additionally, a layer data record can be created in which the edges of the respective layer are noted.
  • the invention also relates to a method in which an additive manufacturing tool is controlled using the manufacturing contours for each manufacturing level.
  • the contour data records can be sent to a computing unit that has an additive manufacturing tool, such as a 3D printer, controls, are transmitted. Since the contour data records determine the course of the production contour, the print head of the production tool can be controlled in such a way that its travel path runs within the production contour.
  • the determination of the manufacturing contours for several levels according to the invention can be carried out simply in parallel, alternatively or additionally the manufacturing contours of a subsequent level can only be determined after the determination of the manufacturing contours of a first manufacturing level.
  • the print head can already produce the production contours of the first production level, while at the same time the contour data set for the production contour of the subsequent and/or further levels can be determined. If the contour data memory includes more than one production contour per production level, the travel path of the print head can run between the two production contours in the case of production contours lying one inside the other.
  • the invention also relates to a data structure for carrying out the method with an edge memory area which comprises a number of edge data records which have the point index of a base point, the point index of an edge point and the point index of the preferred corner point which, together with the base point and the edge point, forms a triangular facet .
  • the edge data sets only have to include the point indices of all points, while the spatial coordinates can be stored in a further point storage area of the data structure containing point data sets.
  • the spatial coordinates of the corresponding points in the point storage area can be retrieved via the point indices.
  • the edge data record can include further entries, such as the further corner point, an edge index and/or a layer index.
  • the edge data set can be divided into several regions, so that the functional assignment of the vertices is determined by the storage location of their indices.
  • the base point can be stored in a first area, the edge point in a second area, the preferred corner point in a third area, the other corner point in a fourth area, and so on.
  • Another advantage of the data structure is that after the creation of the edge data records, these are based on the base, edge and In addition, the position of the triangular facets of the model can already be taken from the corner points, so that the triangular facets no longer have to be stored separately, which means that the memory requirement for the data structure can be significantly reduced.
  • FIG. 1 shows a schematic flow chart of a method according to the invention
  • FIG. 2 shows a representation of a model having triangular facets with a production level
  • FIG. 3 shows a section along the line II-II of FIG. 2 showing a manufacturing contour
  • FIG. 4 shows a data structure according to the invention with a memory area for point data sets, a memory area for facet data sets and a memory area for edge data sets and
  • FIG. 5 shows a representation of the contour data memory.
  • a model 1 is described by triangular facets 2 . These triangular facets 2 are each delimited by three corner points 3 .
  • point data records 5 which include the spatial coordinates of the corner points 3, are stored in the point memory and provided with consecutive point indices.
  • edge data records 7 are created and stored in an edge memory, in which a corner point 3 is defined as the base point and a corner point 3 adjacent to it is defined as the edge point, with the base point and edge point each delimiting an edge 8 and the point indices of the base point and the edge point forming the edge data record 7 to be added.
  • these edge data records 7 are also assigned the point indices of this edge 8 adjacent third and fourth corner points 3 are added with which, starting from this edge 8, two triangular facets 2 can be formed. It goes without saying that, depending on the edge data record 7, the same corner point 3 can be a base point, an edge point or a corner point that delimits a triangular facet 2 with the base point and the corner point.
  • FIG. 1 shows the schematic sequence of the method: In order to determine a manufacturing contour 9, the model 1 is intersected with a manufacturing plane 10.
  • FIG. 10 In a step 11, a first initial point of intersection of the production plane 10 with an edge 8 of the model 1 is first determined algebraically, the edge data record 7 of this edge 8 is selected and the initial point of intersection together with its spatial coordinates is stored as a contour data record 12 in a contour data memory.
  • the further points of intersection 13 of the model 1 with the production level 10 are now determined.
  • the next point of intersection 13 must lie on one of the four adjacent edges 8.
  • These four adjacent edges 8 are all delimited by corner points 3 whose point indices are stored in the selected edge data set 7 .
  • the running direction can be determined, in which the further points of intersection 13 are determined.
  • a step 14 it is thus determined with which of these edges 8 delimited by the corner points 3 of the selected edge data set 7 the production plane 10 has an intersection 13 and its spatial coordinates are determined algebraically.
  • step 15 it is checked whether the point of intersection 13 that has just been determined is the initial point of intersection. If this is the case, the contour is closed and the iteration loop is exited. If the determined point of intersection 13 is not the initial point of intersection, the spatial coordinates of this point of intersection 13 are added to the contour data memory in step 16 as a contour data set 12 .
  • the Edge data record 7 of edge 8 is selected, which has intersection point 13 determined in step 14, and the next intersection point can be determined when step 14 is run through again. If the iteration loop is exited, the contour data sets 12 stored in the contour data memory are output in a step 18, whereupon the manufacturing contour 9 can be formed from the contour data sets 12 and can be further processed by an additive manufacturing tool.
  • a data structure for carrying out the method is shown by way of example in FIG. 4 .
  • Such data structures include point memory areas 19 in which the point data records 5 are stored.
  • each row corresponds to a point data record 5, with specific information regarding the vertices 3 being determined by the storage location.
  • the point index of the corner point 3 can be stored in the first column and its x, y and z coordinates in the second, third or fourth column.
  • the point index of the corner point 3 is not stored in a separate column, but results from the storage order of the point data records in the point storage area 19.
  • the data structure also includes an edge memory area 20 in which the edge data records 7 are stored.
  • each row corresponds to an edge data record 7.
  • the edge data records 7 do not include any spatial coordinates of corner points 3, only their point indices.
  • the spatial coordinates of a corner point 3 can be retrieved from the point storage area 19 in the data structure via its point index.
  • the functional assignment of the corner points 3 can be determined via the storage location of their indices.
  • the base point can be stored in the first column of the edge storage area 20, the edge point in the second column, the preferred vertex in the third column, the other vertex in the fourth column, and so on.
  • an edge index can be stored in the fifth column and an assignment to a layer can be stored in the sixth column.
  • facet data sets 21 in of the data structure can be stored in a faceted memory area 22 .
  • the facet data sets 21 include the point indices of those three corner points 3 which delimit a triangular facet 2 .
  • the sequence of the point indices of a facet data set 21 in the row can be used to define which side the surface normal of the triangular facet 2 points to.
  • FIG. 5 shows an illustration of the contour data memory in which contour data sets 12 can be stored.
  • an index assigned to the contour data set 12 can be stored in the first column
  • the x, y and z coordinates in the second to fourth columns and another index for assignment to a production level can be stored in the fifth column.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Materials Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (AREA)
  • Manufacturing & Machinery (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Mechanical Engineering (AREA)
  • Optics & Photonics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Numerical Control (AREA)

Abstract

A method for additively manufacturing a workpiece on the basis of a model (1) having point data sets (5) with spatial coordinates of the vertices (3) of triangular facets (2) is described. In order to reduce the amount of time and effort required to determine the manufacturing contour on a manufacturing plane, according to the invention, at least the point index of a vertex (3) which, together with the base point and the edge point, forms a triangular facet (2) is added to the edge data set (7), whereupon an initial intersection point of a specified manufacturing plane (10) with an edge (8) running between the base point and the edge point of a selected edge data set (7) is determined and is stored, together with its spatial coordinates, as a contour data set (12) in a contour data store, whereupon in an iteration step an additional intersection point (13) between the specified manufacturing plane (10) and an intersected edge (8) spanned by the base point or by the edge point and by an additional vertex (3) of the selected edge data set (7) is determined and is stored, together with its spatial coordinates, as a contour data set (12) in the contour data store, the iteration step being repeated with the selected edge data set (7), the base point and edge point of which delimit the intersected edge (8), whereupon the contour data sets (12) stored in the contour data store are output as manufacturing contours (9).

Description

Verfahren zur additiven Fertigung eines Werkstücks Process for the additive manufacturing of a workpiece
Technisches Gebiet technical field
Die Erfindung bezieht sich auf ein Verfahren zur Bestimmung von Fertigungskonturen für die additive Fertigung eines Werkstücks anhand eines Punktdatensätze mit Raumkoordinaten der Eckpunkte von Dreiecksfacetten aufweisenden Modells, wobei auf vorgegebenen Fertigungsebenen Fertigungskonturen bestimmt werden, wobei die Punktdatensätze mit einem fortlaufenden Punkteindex versehen und zusammen mit diesem von einer Recheneinheit in einem Punktspeicher abgelegt und anschließend wiederholt aus den Punkteindices eines Basispunkts und eines benachbarten Kantenpunktes ein Kantendatensatz erzeugt und in einem Kantenspeicher abgelegt wird. The invention relates to a method for determining manufacturing contours for the additive manufacturing of a workpiece using a model having point data sets with spatial coordinates of the corner points of triangular facets, with manufacturing contours being determined on predetermined manufacturing planes, the point data sets being provided with a consecutive point index and together with this stored in a point memory by a computing unit and then an edge data record is repeatedly generated from the point indices of a base point and an adjacent edge point and stored in an edge memory.
Stand der Technik State of the art
Aus dem Stand der Technik sind Verfahren bekannt, bei dem ein Gegenstand durch ein Dreiecksfacetten aufweisendes Modell repräsentiert wird und dieses Modell parallel zur z-Achse geschnitten wird (CN110956699A). Dabei wird eine STL-Datei des Modells eingelesen und daraus ein Punktdatensatz und ein Kantendatensatz gebildet, die sich mit einem Grafikprozessor (GPU) verarbeiten lassen. Es werden Fertigungsschichten bestimmt, die durch je zwei Ebenen parallel zur z-Achse definiert werden und anschließend anhand der z-Koordinaten einer Kante bestimmt, von welcher Fertigungsebene diese geschnitten wird. Danach wird die Dreiecksfacette bestimmt, die von dieser Kante begrenzt wird, eingelesen und mittels einer Hash-Tabelle diejenigen Kanten gesucht, die dieselbe Dreiecksfacette begrenzen. Nachdem jeder Fertigungsebene ihre Kanten zugeordnet wurden, wird die Fertigungsebene mit den Kanten geschnitten und die Schnittpunkte, die die Fertigungskonturen begrenzen, bestimmt. Nachteilig am Stand der Technik ist allerdings, dass mehrere, das Verfahren verlangsamende Schritte zwingend notwendig sind: Erst müssen den Kanten sukzessive die Fertigungsebenen zugewiesen werden, sodass erst dann alle Schnittpunkte auf einer Fertigungsebene eindeutig bestimmbar sind, wenn allen Kanten eine Fertigungsebene zugewiesen wurde. Weiters muss mit der Hash- Tabelle und den Dreiecksfacetten eine weitere Datenstruktur und eine zusätzliche Information zur räumlichen Zuordnung einer Kante zu einer Fertigungsebene verarbeitet werden und darüber hinaus müssen Daten zwischen der CPU und der GPU transferiert werden. Methods are known from the prior art in which an object is represented by a model having triangular facets and this model is cut parallel to the z-axis (CN110956699A). An STL file of the model is imported and used to create a point data set and an edge data set that can be processed with a graphics processor (GPU). Manufacturing layers are determined, each of which is defined by two planes parallel to the z-axis, and then the z-coordinates of an edge are used to determine which manufacturing plane intersects it. Then the triangular facet bounded by this edge is read in and a hash table is used to search for those edges that bound the same triangular facet. After each manufacturing plane has its edges assigned, the manufacturing plane is intersected with the edges and the intersection points that bound the manufacturing contours are determined. The disadvantage of the prior art, however, is that several steps that slow down the process are absolutely necessary: First, the manufacturing planes must be successively assigned to the edges, so that all intersection points on a manufacturing plane can only be clearly determined when a manufacturing plane has been assigned to all edges. Furthermore, with the hash table and the triangular facets, another data structure and additional information for the spatial assignment of an edge to a production level must be processed, and data must also be transferred between the CPU and the GPU.
Darstellung der Erfindung Presentation of the invention
Der Erfindung liegt somit die Aufgabe zugrunde, den Zeit- und Arbeitsaufwand zur Bestimmung der Fertigungskontur auf einer Fertigungsebene zu reduzieren, sodass die Bestimmung weiterer Fertigungskonturen parallel zum additiven Verfahren erfolgen kann. The invention is therefore based on the object of reducing the time and work involved in determining the manufacturing contour on one manufacturing level, so that further manufacturing contours can be determined in parallel with the additive method.
Die Erfindung löst die gestellte Aufgabe dadurch, dass dem Kantendatensatz wenigstens der Punkteindex eines Eckpunktes hinzugefügt wird, der gemeinsam mit dem Basispunkt und dem Kantenpunkt eine Dreiecksfacette bildet, wonach ein Initialschnittpunkt einer vorgegebenen Fertigungsebene mit einer zwischen dem Basispunkt und dem Kantenpunkt eines ausgewählten Kantendatensatzes verlaufenden Kante bestimmt und gemeinsam mit seinen Raumkoordinaten als Konturdatensatz in einem Konturdatenspeicher abgelegt wird, wonach in einem Iterationsschritt ein weiterer Schnittpunkt zwischen der vorgegebenen Fertigungsebene und einer vom Basispunkt oder vom Kantenpunkt und einem weiteren Eckpunkt des ausgewählten Kantendatensatzes aufgespannten geschnittenen Kante bestimmt und gemeinsam mit seinen Raumkoordinaten als Konturdatensatz im Konturdatenspeicher abgelegt wird, wobei der Iterationsschritt mit dem ausgewählten Kantendatensatz wiederholt wird, dessen Basispunkt und Kantenpunkt die geschnittene Kante begrenzen, wonach die im Konturdatenspeicher abgelegten Konturdatensätze als Fertigungskonturen ausgegeben werden. Nach dem Setzen des Initialschnittpunkts kann der Arbeitsaufwand zum Bestimmen des nächsten Schnittpunktes erheblich reduziert werden, da nicht mehr alle Kanten zwischen allen benachbarten Eckpunkten gebildet und auf einen eventuellen Schnittpunkt mit der Fertigungsebene überprüft werden müssen, sondern nur diejenigen Kanten, die einen gemeinsamen Eckpunkt mit der soeben geschnittenen Kante aufweisen. Dies wird dadurch ermöglicht, dass für je zwei benachbarte Eckpunkte ein Kantendatensatz angelegt wird, in dem neben den beiden benachbarten, die Kante begrenzenden Eckpunkte auch wenigstens einer der beiden Eckpunkte abgelegt wird, mit dem die die Kante begrenzenden Eckpunkte eine Dreiecksfacette bilden. Da höchstens zwei Dreiecksfacetten eine gemeinsame Kante aufweisen können, müssen also höchstens vier Kanten auf einen Schnittpunkt überprüft werden. Zufolge dieser Maßnahmen müssen nur beim Bilden des Initialschnittpunkts eine große Anzahl an Kanten überprüft werden, da sich die anschließend zu überprüfenden Kanten unmittelbar aus dem Kantendatensatz der geschnittenen Kante ergeben. Der Zugriff auf die Eckpunkte erfolgt immer über ihre Punkteindices, über die auf die Raumkoordinaten im Punktspeicher zugegriffen werden kann. Dadurch können die Kantendatensätze vollständig über die Punkteindices der enthaltenen Eckpunkte beschrieben werden. Überprüfen bedeutet im erfindungsgemäßen Sinne, dass aus den Punkteindices zweier benachbarter Eckpunkte die Raumkoordinaten dieser Eckpunkte aus dem Punktespeicher ausgelesen werden und anschließend aus diesen vektoriell die Kante bestimmt wird, die der von diesen Punkten begrenzte Strecke entspricht. Anschließend wird überprüft, ob diese Strecke einen Schnittpunkt mit der Fertigungsebene, deren Ebenengleichung bekannt ist, aufweist. Dieser Schnittpunkt wird mit seinen Raumkoordinaten im Konturdatensatz abgespeichert. Es können nun solange Schnittpunkte bestimmt werden, bis der Initialschnittpunkt wieder gefunden wurde, da so zwischen den Schnittpunkten eine geschlossene Fertigungskontur gebildet werden kann. The invention solves the problem in that at least the point index of a corner point is added to the edge data record, which together with the base point and the edge point forms a triangular facet, after which an initial intersection point of a specified production plane with an edge running between the base point and the edge point of a selected edge data record is determined and stored together with its spatial coordinates as a contour data record in a contour data memory, after which in an iteration step a further intersection point between the specified production plane and a cut edge spanned from the base point or from the edge point and a further corner point of the selected edge data record is determined and together with its spatial coordinates as a contour data record is stored in the contour data memory, the iteration step being repeated with the selected edge data set whose base point and edge point delimit the cut edge, after which the contour data sets stored in the contour data memory are output as manufacturing contours. After setting the initial intersection, the The amount of work required to determine the next intersection point can be significantly reduced, since all edges no longer have to be formed between all adjacent corner points and checked for a possible intersection with the production plane, but only those edges that have a common corner point with the edge that has just been cut. This is made possible by the fact that an edge data record is created for every two adjacent corner points, in which, in addition to the two adjacent corner points delimiting the edge, at least one of the two corner points is also stored, with which the corner points delimiting the edge form a triangular facet. Since at most two triangle facets can share an edge, at most four edges need to be checked for an intersection. As a result of these measures, a large number of edges only have to be checked when forming the initial intersection point, since the edges to be checked subsequently result directly from the edge data record of the cut edge. The corner points are always accessed via their point indices, which can be used to access the spatial coordinates in the point memory. As a result, the edge data records can be described completely via the point indices of the corner points contained. In the context of the invention, checking means that the spatial coordinates of these corner points are read out of the point memory from the point indices of two adjacent corner points and the edge is then determined vectorially from these, which corresponds to the segment delimited by these points. It is then checked whether this line intersects with the production plane, whose plane equation is known. This point of intersection is stored with its spatial coordinates in the contour data record. Intersections can now be determined until the initial intersection has been found again, since a closed production contour can be formed between the intersections.
Um den Zeit- und Speicheraufwand durch das Vermeiden redundanter Kantendatensätze zu reduzieren, kann für jede Kante genau ein Kantendatensatz im Kantenspeicher abgelegt werden. Da jede Kante durch einen Basispunkt und einen Kantenpunkt begrenzt wird, kann für dieselbe Kante über eine Permutation ein zweiter Kantendatensatz gebildet werden, indem der Basispunkt mit dem Kantenpunkt ausgetauscht wird und vice versa. Zur Durchführung des Verfahrens wird pro Kante aber nur ein Kantendatensatz benötigt, sodass der zweite Kantendatensatz nicht im Kantenspeicher abgelegt wird, wodurch das Verfahren beschleunigt werden kann. Dies kann beispielsweise dadurch geschehen, indem der Basispunkt X an erster Stelle im Kantendatensatz abgelegt wird und der Kantenpunkt Y an zweiter Stelle, womit die beiden Eckpunkte als XY im Kantendatensatz abgelegt werden. Jedes Mal, wenn ein neuer Kantendatensatz gebildet wird, kann überprüft werden, ob es sich bei dem neuen Kantendatensatz um eine Permutation eines alten Datensatzes, in diesem Beispiel also YX, handelt. Sollte dies der Fall sein, wird der neue Kantendatensatz nicht im Kantenspeicher abgelegt. In order to reduce the time and memory expenditure by avoiding redundant edge data records, exactly one edge data record can be stored in the edge memory for each edge. Since each edge is delimited by a base point and an edge point, a second edge data set can be formed for the same edge via a permutation by dividing the base point with the edge point is exchanged and vice versa. However, only one edge data set is required per edge to carry out the method, so that the second edge data set is not stored in the edge memory, which means that the method can be accelerated. This can be done, for example, by storing the base point X in the first place in the edge data set and the edge point Y in the second place, with the two corner points being stored as XY in the edge data set. Every time a new edge data set is formed, it can be checked whether the new edge data set is a permutation of an old data set, ie YX in this example. If this is the case, the new edge data record is not stored in the edge memory.
Alternativ oder zusätzlich kann der Ressourcenaufwand des Verfahrens weiter reduziert werden, wenn der Basispunkt jedes Kantendatensatzes einen höheren oder niedrigeren Punkteindex als der Kantenpunkt des jeweiligen Kantendatensatzes aufweist.. Da jede Kante prinzipiell mit zwei Kantendatensätzen beschrieben werden kann, wird zufolge dieser Maßnahmen ein eindeutiger Kantendatensatz, bei dem der Basispunkt des Kantendatensatzes einen höheren oder niedrigeren Punkteindex als der Kantenpunkt des Kantendatensatzes aufweist, für jede Kante definiert. Wichtig ist in beiden Fällen, dass diese Zuweisung für alle Kantendatensätze einheitlich erfolgt. Diese Maßnahme erleichtert nicht nur die Sicherstellung eindeutiger Kanten, sondern gibt für die einzelnen Kanten auch eine definierte Richtung vor, nämlich vom Basispunkt zum Kantenpunkt oder umgekehrt. Dadurch ist die Kante nicht nur als Strecke, sondern auch als Vektor beschrieben. Alternatively or additionally, the resources required for the method can be further reduced if the base point of each edge data record has a higher or lower point index than the edge point of the respective edge data record. Since each edge can in principle be described with two edge data records, these measures result in a unique edge data record, where the base point of the edge record has a higher or lower point index than the edge point of the edge record is defined for each edge. In both cases, it is important that this assignment is uniform for all edge data sets. This measure not only makes it easier to ensure clear edges, but also specifies a defined direction for the individual edges, namely from the base point to the edge point or vice versa. As a result, the edge is not only described as a segment, but also as a vector.
Um nach der Bestimmung des Initialschnittpunkts die Anzahl der zu überprüfenden Kanten zu halbieren, wird vorgeschlagen, dass das Modell Facettendatensätze aufweist, die die Flächennormalen der Dreiecksfacetten umfassen und dass den Kantendatensätzen jeweils der Punkteindex eines bevorzugten Eckpunktes hinzugefügt wird, der gemeinsam mit dem Basispunkt einen Basisvektor aufspannt, dessen Kreuzprodukt mit dem vom Basispunkt und dem Kantenpunkt aufgespannten Kantenvektor in oder gegen die Richtung der Flächennormale der durch Basisvektor und Kantenvektor begrenzten Dreiecksfacette verläuft. Zufolge dieser Maßnahmen kann unabhängig von der Lage des Modells zu der Fertigungsebene eine Laufrichtung definiert werden, vorausgesetzt, dass die Flächennormalen der Dreiecksfacetten auf die gleiche Seite der von ihnen definierten Oberfläche weisen. Dem Kantendatensatz wird demnach an einer vorgegebenen Speicherposition der bevorzugte Eckpunkt im Kantenspeicher hinzugefügt, der einen Basisvektor begrenzt, dessen Kreuzprodukt mit dem Kantenvektor des Kantendatensatzes in oder gegen die Richtung der Flächennormale der durch Basisvektor und Kantenvektor begrenzten Dreiecksfacette verläuft. Somit werden in weiterer Folge nur die beiden weiteren Kanten der mit dem bevorzugten Eckpunkt gebildeten Dreiecksfacette auf Schnittpunkte überprüft. Dabei spielt es keine Rolle, ob das mit dem bevorzugten Eckpunkt gebildete Kreuzprodukt in oder gegen die Richtung der Flächennormale der durch Basisvektor und Kantenvektor begrenzten Dreiecksfacette verläuft, solange diese Richtungszuweisung für alle Kantendatensätze einheitlich ist. In order to halve the number of edges to be checked after determining the initial intersection point, it is proposed that the model have facet data sets that include the surface normals of the triangle facets and that the edge data sets each have the point index of a preferred corner point added, which together with the base point forms a base vector spanned, whose cross product with the edge vector spanned by the base point and the edge point in or against the direction of the surface normal of the triangular facet delimited by the base vector and the edge vector. As a result of these measures, a running direction can be defined independently of the position of the model to the production plane, provided that the surface normals of the triangle facets point to the same side of the surface they define. The preferred corner point in the edge memory is therefore added to the edge data set at a predetermined storage position, which delimits a base vector whose cross product with the edge vector of the edge data set runs in or against the direction of the surface normal of the triangular facet delimited by the base vector and edge vector. Consequently, only the other two edges of the triangular facet formed with the preferred corner point are subsequently checked for points of intersection. It does not matter whether the cross product formed with the preferred vertex runs in or against the direction of the surface normal of the triangular facet delimited by the base vector and edge vector, as long as this direction assignment is uniform for all edge data sets.
Die Flächennormalen der Dreiecksfacetten sind oft vordefiniert, wodurch sich die Laufrichtung, in der ausgehend vom In italschnittpunkt weitere Schnittpunkte gebildet werden, vorgegeben sein kann. Um daher insbesondere bei vordefinierten Flächennormalen der Dreiecksfacetten die Laufrichtung auswählen zu können, wird vorgeschlagen, dass , den Kantendatensätzen jeweils der Punkteindex jenes weiteren Eckpunktes zusätzlich hinzugefügt wird, der gemeinsam mit dem Basispunkt einen Basisvektor aufspannt, dessen Kreuzprodukt mit dem vom Basispunkt und dem Kantenpunkt aufgespannten Kantenvektor gegen oder in die Richtung der Flächennormale der durch Basisvektor und Kantenvektor begrenzten Dreiecksfacette verläuft. Dem Kantendatensatz wird also zusätzlich zum bevorzugten Eckpunkt der von diesem abweichende weitere Eckpunkt, mit dem eine weitere Dreiecksfacette gebildet werden kann, an einer vorgegebenen Speicherposition hinzugefügt. Durch den gegensätzlichen Verlauf des mit diesem weiteren Eckpunkt gebildeten Kreuzprodukts zur Flächennormale der Dreiecksfacette verläuft die Suche nach den Schnittpunkten entgegen der vorigen Laufrichtung. Die Vorgabe der Laufrichtung kann entweder über den Benutzer oder in einem optionalen, automatisierten Verfahrensschritt vorgegeben werden. Dadurch können beispielsweise vom Initialschnittpunkt ausgehend die Schnittpunkte mit den Kanten jener Dreiecksfacetten überprüft werden, die mit dem weiteren Eckpunkt gebildet werden und diese Schnittpunkte ebenfalls im Konturdatenspeicher abgelegt werden. Darüber hinaus hat das Vorsehen des bevorzugten Eckpunktes und des weiteren Eckpunktes in den Kantendatensätzen den Vorteil, dass die Laufrichtung der Fertigungskonturen auch innerhalb einer Fertigungsebene unterschiedlich gewählt werden können. Somit kann beispielsweise die Laufrichtung einer Außenkontur entgegengesetzt zur Laufrichtung einer Innenkontur abgebildet werden. The surface normals of the triangular facets are often predefined, as a result of which the running direction in which further points of intersection are formed starting from the initial point of intersection can be predetermined. In order to be able to select the running direction, especially with predefined surface normals of the triangle facets, it is proposed that the point index of that further corner point is additionally added to the edge data sets, which together with the base point spans a base vector whose cross product with that of the base point and the edge point Edge vector runs against or in the direction of the surface normal of the triangular facet delimited by the base vector and edge vector. In addition to the preferred corner point, the further corner point deviating therefrom, with which a further triangular facet can be formed, is therefore added to the edge data set at a predetermined storage position. Due to the opposite course of the cross product formed with this further corner point to the surface normal of the triangular facet, the search for the intersection points runs in the opposite direction to the previous course. The running direction can be specified either by the user or in an optional, automated process step are specified. As a result, starting from the initial point of intersection, for example, the points of intersection with the edges of those triangular facets which are formed with the further corner point can be checked and these points of intersection can also be stored in the contour data memory. In addition, the provision of the preferred corner point and the further corner point in the edge data records has the advantage that the running direction of the production contours can also be selected differently within a production level. Thus, for example, the running direction of an outer contour can be mapped opposite to the running direction of an inner contour.
Für ein gegebenes Modell kann sich auf einer Fertigungsebene mehr als eine Fertigungskontur ergeben. Weitere Fertigungskonturen können bestimmt werden, indem die Kantendatensätze geschnittener Kanten markiert werden und vor der Ausgabe der Fertigungskonturen ein weiterer Initialschnittpunkt der vorgegebenen Fertigungsebene mit einer zwischen dem Basispunkt und dem Kantenpunkt eines ausgewählten, nicht markierten Kantendatensatzes verlaufenden Kante bestimmt und gemeinsam mit seinen Raumkoordinaten als Konturdatensatz im Konturdatenspeicher abgelegt wird, wonach der Iterationsschritt mit dem ausgewählten, nicht markierten Kantendatensatz durchgeführt wird. Zufolge dieser Maßnahmen müssen sowohl zur Bestimmung eines weiteren Initialschnittpunktes als auch zur Bestimmung weiterer Schnittpunkte nur diejenigen Kanten überprüft werden, die noch nicht markiert sind, also noch keine Schnittpunkte aufweisen, wodurch die Bestimmung der Schnittpunkte für diese weiteren Konturen beschleunigt wird. Auch hier kann die Bestimmung der Schnittpunkte solange erfolgen, bis wieder der (weitere) Initialschnittpunkt gefunden wurde... Die Markierung der Kantendatensätze kann über einen weiteren Markierungsdatensatz erfolgen, in dem jeder Fertigungsebene ihre markierten Kantendatensätze zugewiesen sind. For a given model, there can be more than one manufacturing contour on a manufacturing level. Further production contours can be determined by marking the edge data sets of cut edges and before the production contours are output, another initial intersection point of the specified production plane with an edge running between the base point and the edge point of a selected, unmarked edge data set and together with its spatial coordinates as a contour data set in the Contour data memory is stored, after which the iteration step is performed with the selected, unmarked edge data set. As a result of these measures, only those edges that are not yet marked, i.e. do not yet have any intersection points, have to be checked both for determining a further initial intersection point and for determining further intersection points, which speeds up the determination of the intersection points for these further contours. Here, too, the intersection points can be determined until the (further) initial intersection point has been found again... The edge data records can be marked using a further marking data record in which each production level is assigned its marked edge data records.
Das Bestimmen des Initialschnittpunktes ist verglichen mit der Bestimmung der restlichen Schnittpunkte ressourcenaufwändig, da eine Vielzahl an Kanten untersucht werden muss. Die Anzahl der dazu zu überprüfenden Kanten und damit der Ressourcenaufwand kann reduziert werden, indem zur Fertigungsebene parallele Schichten vorgegeben werden und jeder Kantendatensatz der Schicht zugeordnet wird, in die die Raumkoordinaten seines Basis- und seines Kantenpunktes fallen, wonach für die Bestimmung des Initialschnittpunktes nur die Kantendatensätze jener Schicht berücksichtigt werden, in der die Fertigungsebene verläuft. Erfindungsgemäß werden also die Kanten vorselektiert und anschließend auf Schnittpunkte überprüft, die in derselben Schicht wie die Fertigungsebene liegen. Da auch Kantendatensätze existieren können, deren Basispunkt und Kantenpunkt in verschiedenen Schichten liegen und demzufolge nicht einer Schicht zugeordnet werden können, kann eine Zusatzschicht vorgesehen sein, der diese Kantendatensätze zugeordnet werden. Zur Bestimmung eines Initialschnittpunkts genügt es bereits, wenn nur ein Kantendatensatz einer Schicht zugeordnet wird, da die anschließende Bestimmung weiterer Schnittpunkte ohnehin über einen weiteren Eckpunkt im Kantendatensatz erfolgt. Die anschließende Zuordnung weiterer Kantendatensätze zu ihren jeweiligen Fertigungsebenen kann dann parallel zum Bestimmen der Schnittpunkte ausgehend vom bereits gefundenen Initialschnittpunkt erfolgen. In einer bevorzugten Ausführungsform werden aber bereits in einemDetermining the initial intersection is resource-intensive compared to determining the remaining intersections, since a large number of edges have to be examined. The number of edges to be checked and Thus the resource expenditure can be reduced by specifying layers parallel to the production level and assigning each edge data record to the layer in which the spatial coordinates of its base and edge points fall, after which only the edge data records of that layer are taken into account for determining the initial intersection point in which the production level runs. According to the invention, the edges are preselected and then checked for intersections that lie in the same layer as the production level. Since edge data sets can also exist whose base point and edge point are in different layers and consequently cannot be assigned to one layer, an additional layer can be provided to which these edge data sets are assigned. In order to determine an initial intersection point, it is already sufficient if only one edge data record is assigned to a layer, since the subsequent determination of further intersection points is carried out via a further corner point in the edge data record anyway. The subsequent assignment of further edge data records to their respective production planes can then take place in parallel with the determination of the intersection points starting from the initial intersection point already found. In a preferred embodiment, however, are already in one
Vorverarbeitungsschritt alle Kantendatensätze einer Schicht zugeordnet, bevor die Initialschnittpunkte für die einzelnen Fertigungsebenen vorzugsweise parallel bestimmt werden. Sollte kein einziger Kantendatensatz einer Schicht zugeordnet werden können, kann in einem optionalen Verfahrensschritt die Schichtdicke solange erhöht werden, bis Basis- und Kantenpunkt zumindest eines Kantendatensatzes in die Schicht fallen und so der Kantendatensatz zugeordnet werden kann. Die Zuordnung eines Kantendatensatzes zu einer Schicht kann über einen weiteren Eintrag im Kantendatensatz selbst erfolgen. Alternativ oder ergänzend kann ein Schichtdatensatz erstellt werden, in dem die Kanten der jeweiligen Schicht vermerkt sind. Preprocessing step assigned all edge data sets of a layer before the initial intersection points for the individual production levels are preferably determined in parallel. If not a single edge data record can be assigned to a layer, the layer thickness can be increased in an optional method step until the base and edge points of at least one edge data record fall into the layer and the edge data record can thus be assigned. An edge data record can be assigned to a layer via a further entry in the edge data record itself. Alternatively or additionally, a layer data record can be created in which the edges of the respective layer are noted.
Die Erfindung bezieht sich auch auf ein Verfahren bei dem für jede Fertigungsebene ein additives Fertigungswerkzeug anhand der Fertigungskonturen angesteuert wird. Die Konturdatensätze können an eine Recheneinheit, die ein additives Fertigungswerkzeug, wie beispielsweise einen 3D-Drucker, ansteuert, übermittelt werden. Da die Konturdatensätze den Verlauf der Fertigungskontur bestimmen, kann der Druckkopf des Fertigungswerkzeugs so angesteuert werden, dass sein Verfahrweg innerhalb der Fertigungskontur verläuft. Zwar kann das erfindungsgemäße Bestimmen der Fertigungskonturen für mehrere Ebenen einfachparallelisiert durchgeführt werden, alternativ oder zusätzlich können jedoch erst nach Bestimmung der Fertigungskonturen einer ersten Fertigungsebene die Fertigungskonturen einer darauffolgenden Ebene bestimmt werden. Dadurch kann der Druckkopf die Fertigungskonturen der ersten Fertigungsebene bereits fertigen, während zeitgleich dazu der Konturdatensatz für die Fertigungskontur der darauffolgenden und/oder der weiteren Ebenen bestimmt werden kann. Umfasst der Konturdatenspeicher mehr als eine Fertigungskontur pro Fertigungsebene, so kann bei ineinander liegenden Fertigungskonturen der Verfahrweg des Druckkopfs zwischen den beiden Fertigungskonturen verlaufen. The invention also relates to a method in which an additive manufacturing tool is controlled using the manufacturing contours for each manufacturing level. The contour data records can be sent to a computing unit that has an additive manufacturing tool, such as a 3D printer, controls, are transmitted. Since the contour data records determine the course of the production contour, the print head of the production tool can be controlled in such a way that its travel path runs within the production contour. Although the determination of the manufacturing contours for several levels according to the invention can be carried out simply in parallel, alternatively or additionally the manufacturing contours of a subsequent level can only be determined after the determination of the manufacturing contours of a first manufacturing level. As a result, the print head can already produce the production contours of the first production level, while at the same time the contour data set for the production contour of the subsequent and/or further levels can be determined. If the contour data memory includes more than one production contour per production level, the travel path of the print head can run between the two production contours in the case of production contours lying one inside the other.
Weiters bezieht sich die Erfindung auf eine Datenstruktur zur Durchführung des Verfahrens mit einem Kantenspeicherbereich, der mehrere Kantendatensätze umfasst, die den Punkteindex eines Basispunktes, den Punkteindex eines Kantenpunktes sowie den Punkteindex des bevorzugten Eckpunkts aufweist, der gemeinsam mit dem Basispunkt und dem Kantenpunkt eine Dreiecksfacette bildet. Erfindungsgemäß müssen die Kantendatensätze nur die Punkteindices aller Punkte umfassen, während die Raumkoordinaten in einem weiteren, Punktdatensätze aufweisenden Punktspeicherbereich der Datenstruktur abgespeichert sein können. Über die Punkteindices können die Raumkoordinaten der entsprechenden Punkte im Punktspeicherbereich abgerufen werden. Der Kantendatensatz kann weitere Einträge, wie beispielsweise den weiteren Eckpunkt, einen Kantenindex und/oder einen Schichtindex umfassen. In einer bevorzugten Ausführungsform kann der Kantendatensatz in mehrere Bereiche unterteilt werden, sodass die funktionale Zuweisung der Eckpunkte über den Speicherort ihrer Indices bestimmt wird. So kann beispielsweise der Basispunkt in einem ersten Bereich, der Kantenpunkt in einem zweiten Bereich, der bevorzugte Eckpunkt in einem dritten Bereich, der weitere Eckpunkt in einem vierten Bereich, usw. abgespeichert sein. Ein weiterer Vorteil der Datenstruktur liegt darin, dass nach der Erstellung der Kantendatensätze diesen aufgrund der Basis-, Kanten und Eckpunkte zusätzlich bereits die Lage der Dreiecksfacetten des Modells entnommen werden kann, sodass die Dreiecksfacetten nicht mehr gesondert abgelegt werden müssen, womit der Speicherbedarf für die Datenstruktur deutlich reduziert werden kann. The invention also relates to a data structure for carrying out the method with an edge memory area which comprises a number of edge data records which have the point index of a base point, the point index of an edge point and the point index of the preferred corner point which, together with the base point and the edge point, forms a triangular facet . According to the invention, the edge data sets only have to include the point indices of all points, while the spatial coordinates can be stored in a further point storage area of the data structure containing point data sets. The spatial coordinates of the corresponding points in the point storage area can be retrieved via the point indices. The edge data record can include further entries, such as the further corner point, an edge index and/or a layer index. In a preferred embodiment, the edge data set can be divided into several regions, so that the functional assignment of the vertices is determined by the storage location of their indices. For example, the base point can be stored in a first area, the edge point in a second area, the preferred corner point in a third area, the other corner point in a fourth area, and so on. Another advantage of the data structure is that after the creation of the edge data records, these are based on the base, edge and In addition, the position of the triangular facets of the model can already be taken from the corner points, so that the triangular facets no longer have to be stored separately, which means that the memory requirement for the data structure can be significantly reduced.
Kurze Beschreibung der Erfindung Brief description of the invention
In der Zeichnung ist der Erfindungsgegenstand beispielsweise dargestellt. Es zeigen In the drawing, the subject of the invention is shown as an example. Show it
Fig. 1 ein schematisches Ablaufdiagramm eines erfindungsgemäßen Verfahrens, Fig. 2 eine Darstellung eines Dreiecksfacetten aufweisenden Modells mit einer Fertigungsebene, 1 shows a schematic flow chart of a method according to the invention, FIG. 2 shows a representation of a model having triangular facets with a production level,
Fig. 3 ein eine Fertigungskontur zeigender Schnitt entlang der Linie II - II der Fig. 2 , 3 shows a section along the line II-II of FIG. 2 showing a manufacturing contour,
Fig. 4 eine erfindungsgemäße Datenstruktur mit einem Speicherbereich für Punktdatensätze, einem Speicherbereich für Facettendatensätze und einem Speicherbereich für Kantendatensätze und 4 shows a data structure according to the invention with a memory area for point data sets, a memory area for facet data sets and a memory area for edge data sets and
Fig. 5 eine Darstellung des Konturdatenspeichers. 5 shows a representation of the contour data memory.
Wege zur Ausführung der Erfindung Ways to carry out the invention
Bei einem erfindungsgemäßen Verfahren zur additiven Fertigung eines Werkstücks wird ein Modell 1 durch Dreiecksfacetten 2 beschrieben. Diese Dreiecksfacetten 2 werden je von drei Eckpunkten 3 begrenzt. In einem ersten Schritt 4 werden Punktdatensätze 5, die die Raumkoordinaten der Eckpunkte 3 umfassen, im Punktspeicher abgelegt und mit fortlaufenden Punkteindices versehen. Anschließend werden in einem Schritt 6 Kantendatensätze 7 angelegt und in einem Kantenspeicher, indem ein Eckpunkt 3 als Basispunkt und ein diesem benachbarter Eckpunkt 3 als Kantenpunkt definiert wird, wobei Basispunkt und Kantenpunkt je eine Kante 8 begrenzen und die Punkteindices des Basispunktes und des Kantenpunktes dem Kantendatensatz 7 hinzugefügt werden. Diesen Kantendatensätzen 7 werden in der gezeigten bevorzugten Ausführungsform ebenfalls in Schritt 6 die Punkteindices der dieser Kante 8 benachbarten dritten und vierten Eckpunkte 3 hinzugefügt mit denen ausgehend von dieser Kante 8 zwei Dreiecksfacetten 2 gebildet werden können. Es versteht sich dabei von selbst, dass je nach Kantendatensatz 7 derselbe Eckpunkt 3 Basispunkt, Kantenpunkt oder einer der mit dem Basis- und dem Eckpunkt eine Dreiecksfacette 2 begrenzender Eckpunkt sein kann. In a method according to the invention for the additive manufacturing of a workpiece, a model 1 is described by triangular facets 2 . These triangular facets 2 are each delimited by three corner points 3 . In a first step 4, point data records 5, which include the spatial coordinates of the corner points 3, are stored in the point memory and provided with consecutive point indices. Subsequently, in a step 6, edge data records 7 are created and stored in an edge memory, in which a corner point 3 is defined as the base point and a corner point 3 adjacent to it is defined as the edge point, with the base point and edge point each delimiting an edge 8 and the point indices of the base point and the edge point forming the edge data record 7 to be added. In the preferred embodiment shown, these edge data records 7 are also assigned the point indices of this edge 8 adjacent third and fourth corner points 3 are added with which, starting from this edge 8, two triangular facets 2 can be formed. It goes without saying that, depending on the edge data record 7, the same corner point 3 can be a base point, an edge point or a corner point that delimits a triangular facet 2 with the base point and the corner point.
Die Fig. 1 zeigt den schematischen Ablauf des Verfahrens: Um eine Fertigungskontur 9 zu bestimmen, wird das Modell 1 mit einer Fertigungsebene 10 geschnitten. Dabei wird in einem Schritt 1 1 zuerst algebraisch ein erster Initialschnittpunkt der Fertigungsebene 10 mit einer Kante 8 des Modells 1 bestimmt, der Kantendatensatz 7 dieser Kante 8 ausgewählt und der Initialschnittpunkt zusammen mit seinen Raumkoordinaten als Konturdatensatz 12 in einem Konturdatenspeicher abgelegt. 1 shows the schematic sequence of the method: In order to determine a manufacturing contour 9, the model 1 is intersected with a manufacturing plane 10. FIG. In a step 11, a first initial point of intersection of the production plane 10 with an edge 8 of the model 1 is first determined algebraically, the edge data record 7 of this edge 8 is selected and the initial point of intersection together with its spatial coordinates is stored as a contour data record 12 in a contour data memory.
Nun werden ausgehend von diesem Initialschnittpunkt die weiteren Schnittpunkte 13 des Modells 1 mit der Fertigungsebene 10 bestimmt. Ausgehend von der geschnittenen Kante 8 des ausgewählten Kantendatensatzes 7 muss der nächste Schnittpunkt 13 auf einer der vier benachbarten Kanten 8 liegen. Diese vier benachbarten Kanten 8 werden alle durch Eckpunkte 3, deren Punkteindices im ausgewählten Kantendatensatz 7 abgelegt sind, begrenzt. Dabei handelt es sich um die vier Kanten 8, die vom Basispunkt oder dem Kantenpunkt und vom dritten oder vierten Eckpunkt 3 des ausgewählten Kantendatensatzes 8 begrenzt werden. In einem nicht gezeigten optionalen Verfahrensschritt kann die Laufrichtung bestimmt werden, in der die weiteren Schnittpunkte 13 bestimmt werden. In einem Schritt 14 wird also bestimmt, mit welchem dieser von den Eckpunkten 3 des ausgewählten Kantendatensatzes 7 begrenzten Kanten 8 die Fertigungsebene 10 einen Schnittpunkt 13 aufweist und dessen Raumkoordinaten algebraisch bestimmt. Im folgenden Schritt 15 wird überprüft, ob es sich bei dem soeben bestimmten Schnittpunkt 13 um den Initialschnittpunkt handelt. Ist dies der Fall, liegt eine geschlossene Kontur vor und die Iterationsschleife wird verlassen. Ist der ermittelte Schnittpunkt 13 nicht der Initialschnittpunkt, werden die Raumkoordinaten dieses Schnittpunktes 13 in Schritt 16 als Konturdatensatz 12 dem Konturdatenspeicher hinzugefügt. Im darauffolgenden Schritt 17 wird der Kantendatensatz 7 der Kante 8 ausgewählt, die den in Schritt 14 bestimmten Schnittpunkt 13 aufweist und der nächste Schnittpunkt kann bei einem Neudurchlauf des Schritts 14 bestimmt werden. Wird die Iterationsschleife verlassen, werden die im Konturdatenspeicher abgelegten Konturdatensätze 12 in einem Schritt 18 ausgegeben, woraufhin die Fertigungskontur 9 aus den Konturdatensätzen 12 gebildet und von einem additiven Fertigungswerkzeug weiterverarbeitet werden kann. Starting from this initial point of intersection, the further points of intersection 13 of the model 1 with the production level 10 are now determined. Starting from the intersected edge 8 of the selected edge data record 7, the next point of intersection 13 must lie on one of the four adjacent edges 8. These four adjacent edges 8 are all delimited by corner points 3 whose point indices are stored in the selected edge data set 7 . These are the four edges 8 that are delimited by the base point or the edge point and by the third or fourth corner point 3 of the selected edge data set 8 . In an optional method step that is not shown, the running direction can be determined, in which the further points of intersection 13 are determined. In a step 14 it is thus determined with which of these edges 8 delimited by the corner points 3 of the selected edge data set 7 the production plane 10 has an intersection 13 and its spatial coordinates are determined algebraically. In the following step 15, it is checked whether the point of intersection 13 that has just been determined is the initial point of intersection. If this is the case, the contour is closed and the iteration loop is exited. If the determined point of intersection 13 is not the initial point of intersection, the spatial coordinates of this point of intersection 13 are added to the contour data memory in step 16 as a contour data set 12 . In the next step 17, the Edge data record 7 of edge 8 is selected, which has intersection point 13 determined in step 14, and the next intersection point can be determined when step 14 is run through again. If the iteration loop is exited, the contour data sets 12 stored in the contour data memory are output in a step 18, whereupon the manufacturing contour 9 can be formed from the contour data sets 12 and can be further processed by an additive manufacturing tool.
In Fig. 4 ist eine Datenstruktur zur Durchführung des Verfahrens beispielsweise dargestellt. Solche Datenstrukturen umfassen Punktspeicherbereiche 19, in denen die Punktdatensätze 5 abgelegt werden. In der gezeigten Datenstruktur entspricht jede Zeile einem Punkdatensatz 5, wobei spezifische Informationen betreffend der Eckpunkte 3 durch den Speicherort bestimmt werden. So kann beispielsweise der Punkteindex des Eckpunkts 3 in der ersten Spalte und seine x-, y- und z- Koordinate in der zweiten, dritten, bzw. vierten Spalte abgespeichert sein. In einer weiteren, nicht gezeigten Ausführungsform wird der Punkteindex des Eckpunkts 3 nicht in einer eigenen Spalte abgelegt, sondern ergibt sich aus der Speicherreihenfolge der Punktdatensätze im Punktspeicherbereich 19. So hätte beispielsweise der Punktdatensatz, der in der dritten Zeile abgelegt wird, automatisch den Punkteindex 3. Die Datenstruktur umfasst ferner einen Kantenspeicherbereich 20, in dem die Kantendatensätze 7 abgelegt sind. In der gezeigten Datenstruktur entspricht jede Zeile einem Kantendatensatz 7. Wie bereits erwähnt, umfassen die Kantendatensätze 7 keine Raumkoordinaten von Eckpunkten 3, sondern nur deren Punkteindices. Die Raumkoordinaten eines Eckpunktes 3 können über seinen Punkteindex aus dem Punktspeicherbereich 19 in der Datenstruktur abgerufen werden. Hier kann die funktionale Zuweisung der Eckpunkte 3 über den Speicherort ihrer Indices bestimmt werden. So kann beispielsweise der Basispunkt in der ersten Spalte des Kantenspeicherbereichs 20, der Kantenpunkt in der zweiten Spalte, der bevorzugte Eckpunkt in der dritten Spalte, der weitere Eckpunkt der vierten Spalte, usw. abgelegt sein. Im gezeigten Ausführungsbeispiel kann in der fünften Spalte ein Kantenindex und in der sechsten Spalte eine Zuweisung zu einer Schicht abgelegt sein. Um die Kantendatensätze 7 zu bilden und zu speichern, können Facettendatensätze 21 in der Datenstruktur in einem Facettenspeicherbereichen 22 abgelegt sein. Die Facettendatensätze 21 umfassen dabei die Punkteindices derjenigen drei Eckpunkte 3, die eine Dreiecksfacette 2 begrenzen. Hier kann über die Reihung der Punkteindices eines Facettendatensatzes 21 in der Zeile definiert werden, auf welche Seite die Flächennormale der Dreiecksfacette 2 weist. A data structure for carrying out the method is shown by way of example in FIG. 4 . Such data structures include point memory areas 19 in which the point data records 5 are stored. In the data structure shown, each row corresponds to a point data record 5, with specific information regarding the vertices 3 being determined by the storage location. For example, the point index of the corner point 3 can be stored in the first column and its x, y and z coordinates in the second, third or fourth column. In another embodiment, not shown, the point index of the corner point 3 is not stored in a separate column, but results from the storage order of the point data records in the point storage area 19. For example, the point data record that is stored in the third line would automatically have the point index 3 The data structure also includes an edge memory area 20 in which the edge data records 7 are stored. In the data structure shown, each row corresponds to an edge data record 7. As already mentioned, the edge data records 7 do not include any spatial coordinates of corner points 3, only their point indices. The spatial coordinates of a corner point 3 can be retrieved from the point storage area 19 in the data structure via its point index. Here the functional assignment of the corner points 3 can be determined via the storage location of their indices. For example, the base point can be stored in the first column of the edge storage area 20, the edge point in the second column, the preferred vertex in the third column, the other vertex in the fourth column, and so on. In the exemplary embodiment shown, an edge index can be stored in the fifth column and an assignment to a layer can be stored in the sixth column. In order to form and store the edge data sets 7, facet data sets 21 in of the data structure can be stored in a faceted memory area 22 . In this case, the facet data sets 21 include the point indices of those three corner points 3 which delimit a triangular facet 2 . Here, the sequence of the point indices of a facet data set 21 in the row can be used to define which side the surface normal of the triangular facet 2 points to.
Die Fig. 5 zeigt eine Darstellung des Konturdatenspeichers, in dem Konturdatensätze 12 abgelegt werden können. Auch hier kann analog zu oben in der ersten Spalte ein dem Konturdatensatz 12 zugewiesener Index, in der zweiten bis vierten Spalte die x-, y- und z-Koordinaten und in der fünften Spalte ein weiterer Index zur Zuweisung zu einer Fertigungsebene abgespeichert werden. FIG. 5 shows an illustration of the contour data memory in which contour data sets 12 can be stored. Here, too, an index assigned to the contour data set 12 can be stored in the first column, the x, y and z coordinates in the second to fourth columns and another index for assignment to a production level can be stored in the fifth column.

Claims

Patentansprüche patent claims
1 . Verfahren zur Bestimmung von Fertigungskonturen für die additive Fertigung eines Werkstücks anhand eines Punktdatensätze(5) mit Raumkoordinaten der Eckpunkte (3) von Dreiecksfacetten (2) aufweisenden Modells (1 ), wobei auf vorgegebenen Fertigungsebenen (10) Fertigungskonturen (9) bestimmt, die Punktdatensätze (5) mit einem fortlaufenden Punkteindex versehen und zusammen mit diesem von einer Recheneinheit in einem Punktspeicher abgelegt werden, wonach wiederholt aus den Punkteindices eines Basispunkts und eines benachbarten Kantenpunktes ein Kantendatensatz (7) erzeugt und in einem Kantenspeicher (9) abgelegt wird, dadurch gekennzeichnet, dass dem Kantendatensatz (7) wenigstens der Punkteindex eines Eckpunktes (3) hinzugefügt wird, der gemeinsam mit dem Basispunkt und dem Kantenpunkt eine Dreiecksfacette (2) bildet, wonach ein Initialschnittpunkt einer vorgegebenen Fertigungsebene (10) mit einer zwischen dem Basispunkt und dem Kantenpunkt eines ausgewählten Kantendatensatzes (7) verlaufenden Kante (8) bestimmt und gemeinsam mit seinen Raumkoordinaten als Konturdatensatz (12) in einem Konturdatenspeicher abgelegt wird, wonach in einem Iterationsschritt ein weiterer Schnittpunkt (13) zwischen der vorgegebenen Fertigungsebene (10) und einer vom Basispunkt oder vom Kantenpunkt und einem weiteren Eckpunkt (3) des ausgewählten Kantendatensatzes (7) aufgespannten geschnittenen Kante (8) bestimmt und gemeinsam mit seinen Raumkoordinaten als Konturdatensatz (12) im Konturdatenspeicher abgelegt wird, wobei der Iterationsschritt mit dem ausgewählten Kantendatensatz (7) wiederholt wird, dessen Basispunkt und Kantenpunkt die geschnittene Kante (8) begrenzen, wonach die im Konturdatenspeicher abgelegten Konturdatensätze (12) als Fertigungskonturen (9) ausgegeben werden. 1 . Method for determining manufacturing contours for the additive manufacturing of a workpiece using a point data set (5) with spatial coordinates of the corner points (3) of triangular facets (2) having a model (1), with manufacturing contours (9) being determined on predetermined manufacturing planes (10), the point data sets (5) provided with a consecutive point index and stored together with this by a computing unit in a point memory, after which an edge data set (7) is repeatedly generated from the point indices of a base point and an adjacent edge point and stored in an edge memory (9), characterized that at least the point index of a corner point (3) is added to the edge data set (7), which together with the base point and the edge point forms a triangular facet (2), after which an initial intersection point of a predetermined production plane (10) with a between the base point and the edge point edge (8) running along a selected edge data set (7) is determined and stored together with its spatial coordinates as a contour data set (12) in a contour data memory, after which, in an iteration step, a further intersection point (13) between the specified production level (10) and one from the base point or determined from the edge point and a further corner point (3) of the selected edge data set (7) spanned cut edge (8) and stored together with its spatial coordinates as a contour data set (12) in the contour data memory, the iteration step being repeated with the selected edge data set (7), whose base point and edge point delimit the cut edge (8), after which the contour data sets (12) stored in the contour data memory are output as production contours (9).
2. Verfahren nach Anspruch 1 , dadurch gekennzeichnet, dass für jede Kante (8) genau ein Kantendatensatz (7) im Kantenspeicher abgelegt wird. 2. The method according to claim 1, characterized in that for each edge (8) exactly one edge data record (7) is stored in the edge memory.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass der Basispunkt jedes Kantendatensatzes (7) einen höheren oder niedrigeren Punkteindex als der Kantenpunkt des jeweiligen Kantendatensatzes (7) aufweist. 3. The method according to claim 1 or 2, characterized in that the base point of each edge data record (7) has a higher or lower point index than the edge point of the respective edge data record (7).
4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass das Modell (1 ) Facettendatensätze (21 ) aufweist, die die Flächennormalen der Dreiecksfacetten (3) umfassen und dass den Kantendatensätzen (7) jeweils der Punkteindex eines bevorzugten Eckpunktes (3) hinzugefügt wird, der gemeinsam mit dem Basispunkt einen Basisvektor aufspannt, dessen Kreuzprodukt mit dem vom Basispunkt und dem Kantenpunkt aufgespannten Kantenvektor in oder gegen die Richtung der Flächennormale der durch Basisvektor und Kantenvektor begrenzten Dreiecksfacette (3) verläuft. 4. The method according to any one of claims 1 to 3, characterized in that the model (1) has facet data sets (21) which include the surface normals of the triangular facets (3) and that the edge data sets (7) are each assigned the point index of a preferred corner point (3rd ) is added, which together with the base point spans a base vector whose cross product with the edge vector spanned by the base point and the edge point runs in or against the direction of the surface normal of the triangular facet (3) delimited by the base vector and edge vector.
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass den Kantendatensätzen (7) jeweils der Punkteindex jenes weiteren Eckpunktes (3) zusätzlich hinzugefügt wird, der gemeinsam mit dem Basispunkt einen Basisvektor aufspannt, dessen Kreuzprodukt mit dem vom Basispunkt und dem Kantenpunkt aufgespannten Kantenvektor gegen oder in die Richtung der Flächennormale der durch Basisvektor und Kantenvektor begrenzten Dreiecksfacette (3) verläuft. 5. The method according to claim 4, characterized in that the point index of that further corner point (3) is additionally added to the edge data records (7), which together with the base point spans a base vector whose cross product with the edge vector spanned by the base point and the edge point is opposite or runs in the direction of the surface normal of the triangular facet (3) delimited by the base vector and edge vector.
6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass die Kantendatensätze (7) geschnittener Kanten (8) markiert werden und vor der Ausgabe der Fertigungskonturen (9) ein weiterer Initialschnittpunkt der vorgegebenen Fertigungsebene (10) mit einer zwischen dem Basispunkt und dem Kantenpunkt eines ausgewählten, nicht markierten Kantendatensatzes (7) verlaufenden Kante (8) bestimmt und gemeinsam mit seinen Raumkoordinaten als Konturdatensatz (12) im Konturdatenspeicher abgelegt wird, wonach der Iterationsschritt mit dem ausgewählten, nicht markierten Kantendatensatz (7) durchgeführt wird. 6. The method according to any one of claims 1 to 5, characterized in that the edge data sets (7) of cut edges (8) are marked and before the production contours (9) are output, another initial intersection point of the specified production plane (10) with a between the base point and the edge point of a selected, unmarked edge data set (7) is determined and stored together with its spatial coordinates as a contour data set (12) in the contour data memory, after which the iteration step is carried out with the selected, unmarked edge data set (7).
7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass zur Fertigungsebene (10) parallele Schichten vorgegeben werden und jeder Kantendatensatz (7) der Schicht zugeordnet wird, in die die Raumkoordinaten 15 seines Basis- und seines Kantenpunktes fallen, wonach für die Bestimmung des Initialschnittpunktes nur die Kantendatensätze (7) jener Schicht berücksichtigt werden, in der die Fertigungsebene (10) verläuft. 7. The method according to any one of claims 1 to 6, characterized in that the production level (10) parallel layers are specified and each edge data set (7) is assigned to the layer in which the spatial coordinates 15 of its base point and its edge point, after which only the edge data records (7) of that layer are taken into account for the determination of the initial intersection point, in which the production level (10) runs.
8. Verfahren nach einem der vorangegangenen Ansprüche, dadurch gekennzeichnet, dass für jede Fertigungsebene (10) ein additives Fertigungswerkzeug anhand der Fertigungskonturen (9) angesteuert wird. 8. The method according to any one of the preceding claims, characterized in that for each manufacturing level (10) an additive manufacturing tool based on the manufacturing contours (9) is controlled.
9. Datenstruktur zur Durchführung des Verfahrens nach einem der vorangegangenen Ansprüche, gekennzeichnet durch einen Kantenspeicherbereich (20), der mehrere Kantendatensätze (7) umfasst, die den Punkteindex eines Basispunktes, den Punkteindex eines Kantenpunktes sowie den Punkteindex des bevorzugten Eckpunkts (3) aufweisen, der gemeinsam mit dem Basispunkt und dem Kantenpunkt eine Dreiecksfacette (2) bildet. 9. Data structure for carrying out the method according to one of the preceding claims, characterized by an edge memory area (20) which comprises a plurality of edge data records (7) which have the point index of a base point, the point index of an edge point and the point index of the preferred corner point (3), which forms a triangular facet (2) together with the base point and the edge point.
10. Datenstruktur nach Anspruch 9, dadurch gekennzeichnet, dass die Kantendatensätze (7) je einen weiteren Eckpunkt (3) aufweisen, der gemeinsam mit dem Basispunkt und dem Kantenpunkt eine weitere Dreiecksfacette (2) bildet. 10. Data structure according to claim 9, characterized in that the edge data sets (7) each have a further corner point (3) which forms a further triangular facet (2) together with the base point and the edge point.
PCT/AT2022/060421 2021-12-09 2022-11-30 Method for additively manufacturing a workpiece WO2023102583A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
ATA50985/2021 2021-12-09
ATA50985/2021A AT525686A1 (en) 2021-12-09 2021-12-09 Process for the additive manufacturing of a workpiece

Publications (1)

Publication Number Publication Date
WO2023102583A1 true WO2023102583A1 (en) 2023-06-15

Family

ID=84370547

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/AT2022/060421 WO2023102583A1 (en) 2021-12-09 2022-11-30 Method for additively manufacturing a workpiece

Country Status (2)

Country Link
AT (1) AT525686A1 (en)
WO (1) WO2023102583A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160221262A1 (en) * 2008-05-05 2016-08-04 Suman Das Systems and methods for fabricating three-dimensional objects
CN109159425A (en) * 2018-08-21 2019-01-08 东莞中国科学院云计算产业技术创新与育成中心 The dicing method and 3 D-printing device of threedimensional model
CN109325316A (en) * 2018-11-15 2019-02-12 南京理工大学 STL model efficient parallel based on concurrent welding sequence cuts layer method
CN110956699A (en) 2019-11-27 2020-04-03 西安交通大学 Parallel slicing method for GPU (graphics processing Unit) of triangular mesh model
CN110757804B (en) * 2018-07-26 2021-06-04 中国科学院沈阳自动化研究所 Full-color layered slicing algorithm based on texture mapping three-dimensional model

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104331555B (en) * 2014-10-31 2017-07-14 河海大学常州校区 A kind of sliced sheet processing method for being directed to the non-close STL models with border
CN105550468B (en) * 2016-01-18 2018-06-26 沈阳工业大学 Based on layer become number of edges group and adjacent side sequence chained list etc. thickness dicing method
CN109934923B (en) * 2017-12-15 2022-10-11 中国科学院沈阳自动化研究所 Model layering and track filling method suitable for 3D printing of biological material
CN113715338B (en) * 2021-08-30 2023-08-18 深圳市纵维立方科技有限公司 Slicing method, printing method and related equipment of three-dimensional model

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160221262A1 (en) * 2008-05-05 2016-08-04 Suman Das Systems and methods for fabricating three-dimensional objects
CN110757804B (en) * 2018-07-26 2021-06-04 中国科学院沈阳自动化研究所 Full-color layered slicing algorithm based on texture mapping three-dimensional model
CN109159425A (en) * 2018-08-21 2019-01-08 东莞中国科学院云计算产业技术创新与育成中心 The dicing method and 3 D-printing device of threedimensional model
CN109325316A (en) * 2018-11-15 2019-02-12 南京理工大学 STL model efficient parallel based on concurrent welding sequence cuts layer method
CN110956699A (en) 2019-11-27 2020-04-03 西安交通大学 Parallel slicing method for GPU (graphics processing Unit) of triangular mesh model

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HUGUES HOPPE ED - ASSOCIATION FOR COMPUTING MACHINERY: "Optimization of mesh locality for transparent vertex caching", COMPUTER GRAPHICS PROCEEDINGS. SIGGRAPH 99; [COMPUTER GRAPHICS PROCEEDINGS. SIGGRAPH], ACM ? - NEW YORK, NY, USA, 1515 BROADWAY, 17TH FLOOR NEW YORK, NY 10036 USA, 1 July 1999 (1999-07-01), pages 269 - 276, XP058128801, ISBN: 978-0-201-48560-8, DOI: 10.1145/311535.311565 *
TAO ZHENG ET AL: "Design and realization of STL model slice algorithm based on dynamic adjacent edge", 2017 CHINESE AUTOMATION CONGRESS (CAC), IEEE, 20 October 2017 (2017-10-20), pages 4739 - 4743, XP033290204, DOI: 10.1109/CAC.2017.8243616 *
ZHANG XIPENG ET AL: "A GPU-based parallel slicer for 3D printing", 2017 13TH IEEE CONFERENCE ON AUTOMATION SCIENCE AND ENGINEERING (CASE), IEEE, 20 August 2017 (2017-08-20), pages 55 - 60, XP033299216, DOI: 10.1109/COASE.2017.8256075 *

Also Published As

Publication number Publication date
AT525686A1 (en) 2023-06-15

Similar Documents

Publication Publication Date Title
DE3852596T2 (en) Method for generating a discrete network for simulation using finite differences.
EP0372107B1 (en) Methode and device for simulating the machining of a work piece and its display
DE102013011688B4 (en) Data display device for machine tools for displaying data due to predetermined conditions
DE3401060A1 (en) METHOD FOR PRESENTING AN IMAGE
DE3711348A1 (en) METHOD FOR DETECTING CONTINUOUSLY SPOKEN WORDS
DE102016007651B4 (en) Numerical control with function for automatically selecting a storage destination for a machining program
DE10120615B4 (en) Dynamic memory management for objects of different sizes
WO2023102583A1 (en) Method for additively manufacturing a workpiece
EP3708945B1 (en) Evaluation of measurement data from a measurement of a plurality of workpieces
EP0965090B1 (en) Database system and method for operating a database system
WO2023279125A1 (en) Method for providing simulation cells for continuum mechanical simulations of an object
DE2419522A1 (en) PROCEDURE AND ARRANGEMENT FOR DIVISION OF ONE OR MORE UNUSED AREAS OF A MEMORY CONNECTED TO A COMPUTER
DE60027528T2 (en) Method for displaying material forms / product forms in a machine simulation
EP1500567B1 (en) Method for resolving conflicts in a trackbound transportation system
EP3908424B1 (en) Method for optimizing the occupancy of magazine spaces by tools in a computer-supported manner
DE1288406B (en) Shaving wheel with gradually staggered cutting grooves
DE3920350A1 (en) SYSTEM FOR CREATING CURVED SURFACES
DE102008022532A1 (en) Method for regulating distance between points in computer, involves determining skeletal volume elements adjacent to point volume elements, and determining distance between points as distance of vascular volume element
WO2023041646A1 (en) Method for generating a three-dimensional model of an object for controlling a 3d printer
EP0578841A1 (en) Method for generating contour lines with a computer system
WO2022090046A1 (en) Masking method, computer program, storage medium and electronic control unit
DE2231332C3 (en) Gear-shaped tool for fine machining the tooth flanks of a gear with a certain number of teeth
DE2120410A1 (en) Data processing system with a working memory subdivided into partial memories
EP1464015A2 (en) Construction method and cad system
DE102021125340A1 (en) Control device for a device for the additive manufacturing of three-dimensional objects

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22817070

Country of ref document: EP

Kind code of ref document: A1