package open_vector_format

Mouse Melon logoGet desktop application:
View/edit binary Protocol Buffers messages

message AxisAlignedBox2D

open_vector_format.proto:758

axis aligned rectangular box in 2D defined by the x and y coordinates of the lower left (min) and upper right (max) corner

Used in: Job.JobMetaData, JobParameters, VectorBlock.VectorBlockMetaData, WorkPlane.WorkPlaneMetaData

message BuildProcessorStrategy

build_processor_strategy.proto:33

BuildProcessorStrategy is a settings collection object for a build processor. This definition uses OpenVectorFormat definitions to save a collection of settings for a specific material that can be used to add parameters to OVF vector data based on the LPBF meta data of VectorBlock objects. For each meta data combination a process strategy and marking params can be stored. Handling parameter fallbacks is responsibility of the build processor.

message BuildProcessorStrategy.ParameterSet

build_processor_strategy.proto:40

Used in: BuildProcessorStrategy

message Job

open_vector_format.proto:31

Represents one single production job. May be used as a central (very) large object containing all information, or as a "shell" with no or incomplete WorkPlane information to break down object size.

message Job.JobMetaData

open_vector_format.proto:42

Metadata: Represents metadata related to the job object itself

Used in: Job

message JobLUT

ovf_lut.proto:29

positions are 64bit values in bytes only Int64 and not UInt64 because the length of a filestream is given bei Int64 (long) in C#.

message JobParameters

open_vector_format.proto:55

Process parameters applying to the job as a whole

Used in: Job

message MarkingParams

open_vector_format.proto:69

Parameters controlling the tool (e.g. laser beam) behaviour

Used in: BuildProcessorStrategy.ParameterSet, Job

enum MarkingParams.CornerBlendMode

open_vector_format.proto:141

Used in: MarkingParams

enum MarkingParams.MarkingMode

open_vector_format.proto:129

Used in: MarkingParams

enum MarkingParams.WobbleMode

open_vector_format.proto:162

Used in: MarkingParams

message Part

open_vector_format.proto:186

Part is a reference to a CAD 3D model instance in this Job. Instances in a job may differ in their position, orientation, process strategy, marking parameters or support structures, even if they are derived from the same parent part. Common parent parts of instances can be identified using the parent_part_name, if set.

Used in: Job

message Part.GeometryInfo

open_vector_format.proto:206

Metadata related to the geometry of the part

Used in: Part

message Part.Material

open_vector_format.proto:219

Used in: Part

message Part.ProcessStrategy

open_vector_format.proto:225

Metadata: parameters the job preprocessing program (e.g. Slicer, CAM) used to create the vector data

universal, vendor independent parameters

Used in: BuildProcessorStrategy.ParameterSet, Part

enum Part.ProcessStrategy.HatchingPattern

open_vector_format.proto:277

Used in: ProcessStrategy

message Part.ProcessStrategy.ProprietaryParam

open_vector_format.proto:267

generic definition of proprietary parameters descriptor

Used in: JobParameters, ProcessStrategy

message PowerGradientParams

open_vector_format.proto:176

Used in: MarkingParams

message VectorBlock

open_vector_format.proto:405

Used in: WorkPlane

message VectorBlock.Arcs

open_vector_format.proto:618

An arc is defined by a start point on the circle, defined in relative cartesian coordinates to the center, a center point and an arc angle (degrees). Positive angles mean clockwise, negative counter-clockwise rotation. Multiple same radius/angle arcs are defined with repeated center coordinates (x,y).

Used in: VectorBlock, Ellipses

message VectorBlock.Arcs3D

open_vector_format.proto:630

An arc3D (edge of a plate) is defined by a start point on the circle, defined in relative cartesian coordinates to the center, a center point and an arc angle (degrees). Positive angles mean clockwise, negative counter-clockwise rotation. Multiple same radius/angle arcs are defined with repeated center coordinates (x,y,z) for 3D.

Used in: VectorBlock

message VectorBlock.CubicBezierHatches

open_vector_format.proto:702

Cubic Bézier segments in 2D. Each segment: (x0, y0, c1x, c1y, c2x, c2y, x1, y1) => 8 floats/segment. Pack N: [x0,y0,c1x,c1y,c2x,c2y,x1,y1, ...]

Used in: VectorBlock

message VectorBlock.CubicBezierHatches3D

open_vector_format.proto:733

Cubic Bézier segments in 3D. Each segment: (x0, y0, z0, c1x, c1y, c1z, c2x, c2y, c2z, x1, y1, z1) => 12 floats/segment. Pack N: [x0,y0,z0,c1x,c1y,c1z,c2x,c2y,c2z,x1,y1,z1, ...]

Used in: VectorBlock

message VectorBlock.CubicBezierSpline

open_vector_format.proto:717

Linked Cubic Bézier spline in 2D (continuous). start_control packs tuples (x_i, y_i, c1x_i, c1y_i, c2x_i, c2y_i) => 6 floats/tuple.

Used in: VectorBlock

message VectorBlock.CubicBezierSpline3D

open_vector_format.proto:748

Linked Cubic Bézier spline in 3D (continuous). start_control packs (x_i, y_i, z_i, c1x_i, c1y_i, c1z_i, c2x_i, c2y_i, c2z_i) => 9 floats/tuple.

Used in: VectorBlock

message VectorBlock.Ellipses

open_vector_format.proto:641

An ellipse is defined like an arc, with additional parameters defining the ellipse shape: a/b length of ellipse half axis phi0 phase zero angle (start point of ellipse relative to end of a)

Used in: VectorBlock

message VectorBlock.ExposurePause

open_vector_format.proto:650

Pause the exposure procedure. This can be necessary e.g. for thermal reasons, or for syncing mulitple laser scanner units, preventing overlap or smoke interaction.

Used in: VectorBlock

message VectorBlock.Hatches

open_vector_format.proto:588

Hatches: A hatch is a set of independent straight lines, each defined by one start and one end point (x,y) for 2D.

Used in: VectorBlock

message VectorBlock.Hatches3D

open_vector_format.proto:595

Hatches3D: A hatch is a set of independent straight lines, each defined by one start and one end point (x,y,z) for 3D.

Used in: VectorBlock

message VectorBlock.HatchesParaAdapt

open_vector_format.proto:688

A hatch divided into a line sequence with adaption parameter this vector block type saves significant amounts of vector block meta data compared to writing every hatch as its own LineSequenceParaAdapt block

Used in: VectorBlock

message VectorBlock.LPBFMetadata

open_vector_format.proto:489

ProcessMetaData for LPBF

Used in: BuildProcessorStrategy.ParameterSet, Part, VectorBlock

enum VectorBlock.LPBFMetadata.SkinCoreStrategyArea

open_vector_format.proto:510

Skin Core strategy uses two laser spots with different sizes for core (bigger spot) and outer hull (smaller spot) to increase productivity. Default value (also for not using the strategy) is OuterHull, using the small spot for the whole part.

Used in: LPBFMetadata

enum VectorBlock.LPBFMetadata.SkinType

open_vector_format.proto:501

SkinType defines if the vectors of this block belong to the parts surface in vertical direction InSkin (default), vectors are found on this position on previous and next layer DownSkin, no vectors in previous layer, exposure in powder bed Upskin, no vectors in next layer

Used in: LPBFMetadata

message VectorBlock.LineSequence

open_vector_format.proto:573

LineSequence: A lineSequence is defined by a set of vertex points (x,y), connected contiguously in the listed order by straight line segments. A closed lineSequence can also be called a polygon.

Used in: VectorBlock, WorkPlane.Patch

message VectorBlock.LineSequence3D

open_vector_format.proto:581

LineSequence3D: A lineSequence3D is defined by a set of vertex points (x,y,z) in 3D space, connected contiguously in the listed order by straight line segments. A closed lineSequence can also be called a polygon.

Used in: VectorBlock

message VectorBlock.LineSequenceParaAdapt

open_vector_format.proto:672

A LineSequence with additional adaption of one or more laser parameters along the vectors. Each point consists of (x,y,parameterValue1,parameterValue2...) for 2D. The parameter field defines which parameter values are contained inside points_with_paras. The count of the parameter field defines how many floats define parameters (and which) after x and y. Each parameterValue is the goal value that will be reached at the end of the vector, scaling linear along the vector. The goal gets priority and overwrites settings of the marking parameter set. All other values are still statically set as defined in the marking parameter set.

Used in: VectorBlock, HatchesParaAdapt

enum VectorBlock.LineSequenceParaAdapt.AdaptedParameter

open_vector_format.proto:676

Used in: LineSequenceParaAdapt

message VectorBlock.MicroStructuringMetadata

open_vector_format.proto:518

ProcessMetaData for MicroStructuring

Used in: VectorBlock

enum VectorBlock.PartArea

open_vector_format.proto:531

PartArea defines if the vectors belong to a part surface in horizontal direction (in layer). Contours are borders of the part in the layer, volume (or core) is the area inbetween. Transition contours are special additional contour lines connecting volume and contour.

Used in: LPBFMetadata, MicroStructuringMetadata

message VectorBlock.PointSequence

open_vector_format.proto:602

PointSequence: A point sequence is a set of points, each marked for a fixed period of time. Each point consists of (x,y) for 2D.

Used in: VectorBlock

message VectorBlock.PointSequence3D

open_vector_format.proto:609

PointSequence3D: A point sequence is a set of points, each marked for a fixed period of time. Each point consists of (x,y,z) for 3D.

Used in: VectorBlock

message VectorBlock.PolishingMetadata

open_vector_format.proto:524

ProcessMetaData for Polishing

Todo: Define

Used in: VectorBlock

(message has no fields)

message VectorBlock.QuadraticBezierHatches

open_vector_format.proto:695

Quadratic Bézier segments in 2D. Each segment: (x0, y0, cx, cy, x1, y1) => 6 floats/segment. Pack N: [x0,y0,cx,cy,x1,y1, x0,y0,cx,cy,x1,y1, ...]

Used in: VectorBlock

message VectorBlock.QuadraticBezierHatches3D

open_vector_format.proto:726

Quadratic Bézier segments in 3D. Each segment: (x0, y0, z0, cx, cy, cz, x1, y1, z1) => 9 floats/segment. Pack N: [x0,y0,z0,cx,cy,cz,x1,y1,z1, x0,y0,z0,cx,cy,cz,x1,y1,z1, ...]

Used in: VectorBlock

message VectorBlock.QuadraticBezierSpline

open_vector_format.proto:709

Linked Quadratic Bézier spline in 2D (continuous). start_control packs tuples (x_i, y_i, cx_i, cy_i) => 4 floats/tuple. The end of segment i is the start (x_{i+1},y_{i+1}); the last segment ends at (last_x,last_y).

Used in: VectorBlock

message VectorBlock.QuadraticBezierSpline3D

open_vector_format.proto:739

Linked Quadratic Bézier spline in 3D (continuous). start_control packs (x_i, y_i, z_i, cx_i, cy_i, cz_i) => 6 floats/tuple.

Used in: VectorBlock

enum VectorBlock.StructureType

open_vector_format.proto:544

StructureType defines the type of structure model the vectors belong to. PART is default, usually refering to a tesselated model, e.g. STL models. Support structures don't belong to any part, but are needed for the process. Wirestructures can be tesselated. But it is more efficient to treat them seperatly in a parametrized format. They are similar to supports, but are not removed after the process. Points use is very limited. They may form a support or wirestructure.

Used in: LPBFMetadata, MicroStructuringMetadata

message VectorBlock.SynchronizationBlock

open_vector_format.proto:657

Synchronization block for multi laser scanner unit systems. Creates dynamic dependencies between multiple lasers exposure orders that shall be enforced by the machine controller in real time.

Used in: VectorBlock

message VectorBlock.VectorBlockMetaData

open_vector_format.proto:448

Used in: VectorBlock

message WorkPlane

open_vector_format.proto:303

A WorkingPlane is a 2D working plane of the tool (e.g. laser scanfield, electron beam scan field) in the global 3D coordinate system that is set by moving one or more physical axis relative to the workpiece. It follows the same concept as a sketch plane in CAD applications. Any axis movement that changes the work plane position will require a new WorkingPlane message. synonyms: Layer (LPBF) / 3DPatches (Structuring) / Scanfields (MultiBeam)

Used in: Job

message WorkPlane.Patch

open_vector_format.proto:391

A patch is a subdivision in a workPlane with an own local coordinate system. The local transformation is given by the 2D origin (u/v) Coordinates in the workplane may be tranformed by the machine depending on the patch

Used in: WorkPlaneMetaData

message WorkPlane.WorkPlaneMetaData

open_vector_format.proto:335

optional metadata of this work plane

Used in: WorkPlane

message WorkPlane.WorkPlaneMetaData.closedContour

open_vector_format.proto:348

Used in: WorkPlaneMetaData

enum WorkPlane.WorkPlaneMetaData.closedContour.ContourType

open_vector_format.proto:366

Used in: closedContour

message WorkPlaneLUT

ovf_lut.proto:36

positions are 64bit values in bytes only Int64 and not UInt64 because the length of a filestream is given bei Int64 (long) in C#.