From a84da9cae1cf918beb7d4748e8d9e45b6bceb99c Mon Sep 17 00:00:00 2001 From: Val Erastov Date: Fri, 15 Feb 2019 19:37:31 -0800 Subject: [PATCH] add ellipse support in 3d --- web/app/cad/sketch/sketchModel.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/web/app/cad/sketch/sketchModel.js b/web/app/cad/sketch/sketchModel.js index 6a4762bc..cad1c46e 100644 --- a/web/app/cad/sketch/sketchModel.js +++ b/web/app/cad/sketch/sketchModel.js @@ -249,6 +249,13 @@ export class Ellipse extends SketchPrimitive { tessellateImpl(resolution) { return EllipticalArc.tessEllipticalArc(this.ep1, this.ep2, this.ep1, this.ep1, this.r, resolution); } + + toVerbNurbs(tr) { + const xAxis = this.ep2.minus(this.ep1)._multiply(0.5); + const yAxis = new Vector(xAxis.y, xAxis.x)._normalize()._multiply(this.r) ; + const center = this.ep1.plus(xAxis); + return new verb.geom.Ellipse(tr(center).data(), tr(xAxis).data(), tr(yAxis).data()); + } } export class Contour {