PartLines

class cee.mrk.PartLines()

A part that can show lines in a MarkupModel.

Use MarkupModel.addLinesPart to create a new instance of this class.

Accessors

cee.mrk.PartLines.color()
get color(): Color3Like

The single color of the part

Returns: Color3Like

set color(color: Color3Like): void

Parameters

color: Color3Like

Returns: void

cee.mrk.PartLines.customData()

inherited

get customData(): any

Custom data for the part. This field is not used by EnvisionWeb.

Returns: any

set customData(data: any): void

Parameters

data: any

Returns: void

cee.mrk.PartLines.lineWidth()
get lineWidth(): number

Controls the line width (pixels)

Returns: number

set lineWidth(width: number): void

Parameters

width: number

Returns: void

cee.mrk.PartLines.terminatorDrawMode()
get terminatorDrawMode(): LineTerminatorDrawMode

The line terminator draw mode

Returns: LineTerminatorDrawMode

set terminatorDrawMode(drawMode: LineTerminatorDrawMode): void

Parameters

Returns: void

Methods

cee.mrk.PartLines.clearTerminators()
clearTerminators(): void

Clear start and end terminators

Returns: void

cee.mrk.PartLines.rayIntersect()
rayIntersect(ray: Ray, hitItem: PartHitItem): boolean

Picking

Parameters

ray: Ray

hitItem: PartHitItem

Returns: boolean

cee.mrk.PartLines.setArrowEndTerminator()
setArrowEndTerminator(arrowHeadLengthInPixels: number, arrowHeadWidthInPixels: number): void

Draw arrows at end of lines

Parameters

arrowHeadLengthInPixels: number

arrowHeadWidthInPixels: number

Returns: void

cee.mrk.PartLines.setArrowStartTerminator()
setArrowStartTerminator(arrowHeadLengthInPixels: number, arrowHeadWidthInPixels: number): void

Draw arrows at start of lines

Parameters

arrowHeadLengthInPixels: number

arrowHeadWidthInPixels: number

Returns: void

cee.mrk.PartLines.setBarEndTerminator()
setBarEndTerminator(lengthInPixels: number): void

Draw bars at end of lines

Parameters

lengthInPixels: number

Returns: void

cee.mrk.PartLines.setBarStartTerminator()
setBarStartTerminator(lengthInPixels: number): void

Draw bars at start of lines

Parameters

lengthInPixels: number

Returns: void

cee.mrk.PartLines.setVertices()
setVertices(vertices: ArrayLike): void

Sets the vertices for the lines.

The coordinates need to be interleaved (x0, y0, z0, x1, y1, z1, …)

Lines will be drawn between [x0, y0, z0] and [x1, y1, z1], and between [x2, y2, z2] and [x3, y3, z3], …, so the number of lines will be vertices.length / 6.

In order to draw a continuous path connecting all the given points, use utils.PathGenerator:

const mrkModel = new cee.mrk.MarkupModel();
const partLines = mrkModel.addLinesPart();
const points: cee.Vec3[] = [ ... ];
const vertices = cee.utils.PathGenerator.generateVerticesForPath(points);
partLines.setVertices(vertices);

Parameters

vertices: ArrayLike

Returns: void

cee.mrk.PartLines.setVerticesFloat32Array()
setVerticesFloat32Array(vertices: Float32Array): void

Sets the vertices for the lines from a Float32Array.

The coordinates need to be interleaved (x0, y0, z0, x1, y1, z1, …)

This is the most optimal setting as the PartLines will just hold a reference to the passed array and not copy any data.

Lines will be drawn between [x0, y0, z0] and [x1, y1, z1], and between [x2, y2, z2] and [x3, y3, z3], …, so the number of lines will be vertices.length / 6.

Parameters

vertices: Float32Array

Returns: void