UNPKG

ducjs

Version:

The duc 2D CAD file format is a cornerstone of our advanced design system, conceived to cater to professionals seeking precision and efficiency in their design work.

68 lines (67 loc) 2.64 kB
// automatically generated by the FlatBuffers compiler, do not modify /* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */ import * as flatbuffers from 'flatbuffers'; export class StrokeSides { constructor() { this.bb = null; this.bb_pos = 0; } __init(i, bb) { this.bb_pos = i; this.bb = bb; return this; } static getRootAsStrokeSides(bb, obj) { return (obj || new StrokeSides()).__init(bb.readInt32(bb.position()) + bb.position(), bb); } static getSizePrefixedRootAsStrokeSides(bb, obj) { bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH); return (obj || new StrokeSides()).__init(bb.readInt32(bb.position()) + bb.position(), bb); } preference() { const offset = this.bb.__offset(this.bb_pos, 4); return offset ? this.bb.readUint8(this.bb_pos + offset) : null; } values(index) { const offset = this.bb.__offset(this.bb_pos, 6); return offset ? this.bb.readFloat64(this.bb.__vector(this.bb_pos + offset) + index * 8) : 0; } valuesLength() { const offset = this.bb.__offset(this.bb_pos, 6); return offset ? this.bb.__vector_len(this.bb_pos + offset) : 0; } valuesArray() { const offset = this.bb.__offset(this.bb_pos, 6); return offset ? new Float64Array(this.bb.bytes().buffer, this.bb.bytes().byteOffset + this.bb.__vector(this.bb_pos + offset), this.bb.__vector_len(this.bb_pos + offset)) : null; } static startStrokeSides(builder) { builder.startObject(2); } static addPreference(builder, preference) { builder.addFieldInt8(0, preference, null); } static addValues(builder, valuesOffset) { builder.addFieldOffset(1, valuesOffset, 0); } static createValuesVector(builder, data) { builder.startVector(8, data.length, 8); for (let i = data.length - 1; i >= 0; i--) { builder.addFloat64(data[i]); } return builder.endVector(); } static startValuesVector(builder, numElems) { builder.startVector(8, numElems, 8); } static endStrokeSides(builder) { const offset = builder.endObject(); return offset; } static createStrokeSides(builder, preference, valuesOffset) { StrokeSides.startStrokeSides(builder); if (preference !== null) StrokeSides.addPreference(builder, preference); StrokeSides.addValues(builder, valuesOffset); return StrokeSides.endStrokeSides(builder); } }