diff --git a/src/DatabaseServices/Entity/Region.ts b/src/DatabaseServices/Entity/Region.ts index bc1a69666..968995310 100644 --- a/src/DatabaseServices/Entity/Region.ts +++ b/src/DatabaseServices/Entity/Region.ts @@ -299,6 +299,20 @@ export class Region extends Entity mesh.receiveShadow = true; return mesh; } + else if (renderType === RenderType.Print) + { + return new LineSegments(this.EdgeGeometry, ColorMaterial.GetLineMaterial(0)); + } + else if (renderType === RenderType.Physical2) + { + let mesh = new Mesh(this.MeshGeometry, this.MeshMaterial); + mesh.castShadow = true; + mesh.receiveShadow = true; + return new Object3D().add( + new LineSegments(this.EdgeGeometry, ColorMaterial.GetLineMaterial(this.ColorIndex)), + mesh, + ); + } } UpdateDrawObject(renderType: RenderType, obj: Object3D) @@ -324,6 +338,22 @@ export class Region extends Entity mesh.geometry = this.MeshGeometry; mesh.material = this.MeshMaterial; } + else if (renderType === RenderType.Physical2) + { + let mesh = new Mesh(this.MeshGeometry, this.MeshMaterial); + mesh.castShadow = true; + mesh.receiveShadow = true; + return obj.add( + new LineSegments(this.EdgeGeometry, ColorMaterial.GetLineMaterial(this.ColorIndex)), + mesh, + ); + } + else if (renderType === RenderType.Print) + { + let l = obj as LineSegments; + l.geometry = this.EdgeGeometry; + l.material = ColorMaterial.GetLineMaterial(0); + } } /** @@ -331,13 +361,10 @@ export class Region extends Entity */ UpdateDrawObjectMaterial(type: RenderType, obj: Object3D, material?: Material) { - if (type === RenderType.Wireframe) + if (type === RenderType.Wireframe || type === RenderType.Print) { - for (let l of obj.children) - { - let line = l as LineSegments; - line.material = ColorMaterial.GetLineMaterial(this.ColorIndex); - } + let line = obj as LineSegments; + line.material = ColorMaterial.GetLineMaterial(this.ColorIndex); } else if (type === RenderType.Conceptual) {