UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

25 lines (24 loc) 1.01 kB
"use strict"; import { BufferGeometry, BufferAttribute } from "three"; import { BaseSopOperation } from "../../../../../engine/operations/sop/_Base"; import { ObjectType } from "../../../Constant"; import { cadMaterialPoint } from "../CadConstant"; import { CadLoaderSync } from "../CadLoaderSync"; import { objectContentCopyProperties } from "../../../ObjectContent"; export function cadPnt2dToObject3D(cadObject) { const point = cadObject.cadGeometry(); const geo = new BufferGeometry(); const positions = [point.X(), point.Y(), 0]; geo.setAttribute("position", new BufferAttribute(new Float32Array(positions), 3)); const object = BaseSopOperation.createObject(geo, ObjectType.POINTS, cadMaterialPoint()); objectContentCopyProperties(cadObject, object); return object; } export function cadPnt2dTransform(point, t) { point.SetX(point.X() + t.x); point.SetY(point.Y() + t.y); } export function cadPnt2dClone(src) { const oc = CadLoaderSync.oc(); return new oc.gp_Pnt2d_3(src.X(), src.Y()); }