public override void Run(RenderControl renderer) { string fileName = GetResourcePath("Holes.stp"); var shape = StepIO.Open(fileName); if (shape == null) { return; } renderer.ShowShape(shape, Vector3.LightGray); var bbox = shape.GetBBox(); var shape2 = ShapeBuilder.MakeBox(new GAx2(bbox.CornerMax(), GP.DZ()), 100, 100, 10); renderer.ShowShape(shape2, Vector3.LightGray); ExtremaShapeShape ess = new ExtremaShapeShape(); if (!ess.Initialize(shape, shape2, 0.001)) { return; } var pt1 = ess.GetPointOnShape1(0); var pt2 = ess.GetPointOnShape2(0); var line = SketchBuilder.MakeLine(pt1, pt2); renderer.ShowShape(line, Vector3.Red); }
BrepSceneNode CreateGlass(GAx2 ax, double width, double height, double thickness) { var shape = ShapeBuilder.MakeBox(ax, width, thickness, height); var frameMaterial = MeshStandardMaterial.Create("window-glass"); frameMaterial.SetColor(ColorTable.Hex(0xAAAAAA)); frameMaterial.SetFaceSide(EnumFaceSide.DoubleSide); frameMaterial.SetTransparent(true); frameMaterial.SetOpacity(0.5f); return(BrepSceneNode.Create(shape, frameMaterial, null)); }
public override void Run(RenderControl render) { var box = ShapeBuilder.MakeBox(GP.XOY(), 10, 20, 30); render.ShowShape(box, Vector3.Green); var trans = TransformTool.Translate(box, new GVec(-20, 0, 0)); render.ShowShape(trans, Vector3.Blue); var scale = TransformTool.Scale(box, GP.Origin(), 0.5); render.ShowShape(scale, Vector3.Blue); var rotate = TransformTool.Rotation(box, GP.OX(), 45); render.ShowShape(rotate, Vector3.Red); }
public override void Run(RenderControl render) { var arrowMaterial = MeshPhongMaterial.Create("arrow"); arrowMaterial.SetColor(ColorTable.Red); mArrow = ArrowWidget.Create(2, 10, arrowMaterial); mArrow.SetPickable(false); render.ShowSceneNode(mArrow); var shape = ShapeBuilder.MakeBox(GP.XOY(), 10, 20, 30); var mat = MeshStandardMaterial.Create("ss"); mat.SetColor(Vector3.LightGray); var node = BrepSceneNode.Create(shape, mat, null); render.ShowSceneNode(node); }
static void Main(string[] args) { GlobalInstance.Initialize(); WindowCanvas canvas = new WindowCanvas("AnyCAD", false); canvas.Initialize(0, 600, 400); var box = ShapeBuilder.MakeBox(GP.XOY(), 10, 20, 30); var node = BrepSceneNode.Create(box, null, null, 0.01); var scene = canvas.GetContext().GetScene(); scene.AddNode(node); //canvas.Run(); scene.UpdateWorld(); canvas.ZoomToExtend(); canvas.Redraw(0); canvas.CaptureScreenShot("image.bmp"); canvas.Destroy(); GlobalInstance.Destroy(); }
public override void Run(RenderControl render) { mMaterial1 = MeshPhongMaterial.Create("phong.texture"); mMaterial1.SetColor(new Vector3(1, 0, 1)); var texture = ImageTexture2D.Create(GetResourcePath("textures/bricks2.jpg")); texture.SetRepeat(new Vector2(2.0f, 2.0f)); texture.UpdateTransform(); mMaterial1.SetColorMap(texture); var shape = ShapeBuilder.MakeBox(GP.XOY(), 4, 4, 8); mNode = BrepSceneNode.Create(shape, mMaterial1, null); mMaterial2 = MeshPhongMaterial.Create("phong.texture"); var texture2 = ImageTexture2D.Create(GetResourcePath("textures/water.png")); mMaterial2.SetColorMap(texture2); render.ShowSceneNode(mNode); }
public override void Run(RenderControl render) { var box = ShapeBuilder.MakeBox(GP.XOY(), 10, 10, 10); var sphere = ShapeBuilder.MakeSphere(GP.Origin(), 5); render.ShowShape(box, Vector3.Red); render.ShowShape(sphere, Vector3.Blue); var common = BooleanTool.Common(box, sphere); render.ShowShape(common, Matrix4.makeTranslation(-20, 0, 0)); var cut = BooleanTool.Cut(box, sphere); render.ShowShape(cut, Matrix4.makeTranslation(0, 20, 0)); var cut2 = BooleanTool.Cut(sphere, box); render.ShowShape(cut2, Matrix4.makeTranslation(0, -20, 0)); var fuse = BooleanTool.Fuse(box, sphere); render.ShowShape(fuse, Matrix4.makeTranslation(20, 0, 0)); }