Blog


Learn about industry trends, news and how-tos from our product experts.

3D Graphics

Zoom invariant / Position Invariant entity

 Non-maintained solution The proposed solution is not natively supported and may not work in all scenarios and versions. Entity To create a zoom invariant entity, meaning an entity that stays the same size on screen regardless of the camera position and zoom, you can use the following mesh-deriv…

by Matteo Librenti | January 18, 2019 | Share

3D Graphics

Turbo Mode

Eyeshot 2024 Update This feature has been retired in favor of the Minimum Frame Rate one. In Eyeshot version 12 we introduced a simplified representation of the scene that allows smooth Zoom/Pan/Rotate dynamic movements. This simplified representation is used only during dynamic movements (betwee…

by Alberto Bencivenni | January 11, 2019 | Share

3D Graphics

Transparency explained

To make the entity color semi-transparent you need simply to set its color Alpha component to a value lower than 255. The entity color depends on two factors: Color method (byEntity, byLayer, byParent) Viewport display mode (Shaded, Rendered) If you are using Rendered display mode, for example, t…

by Alberto Bencivenni | January 09, 2019 | Share

Miscellaneous

Geometry Import/Export

ImportSupposing you want to import an OBJ file (all the import methods follow the same scheme), you need the ReadOBJ class. Before adding them to the scene, this class gives you full control over all the imported items (entities, blocks, layers, materials, etc.). During file import, you can also co…

by Giulia Martini | January 08, 2019 | Share

Miscellaneous

Eyeshot file format thumbnail handler

You can extract the thumbnail icon from the Eyeshot proprietary file format with the below code Bitmap thumb = UtilityEx.ConvertBytesToImage(new ReadFile(fileName, true).GetThumbnail()); For example, you can use it to create your own shell thumbnail providers as explained in this codeproject tutori…

by Marcello Stagni | April 23, 2018 | Share

3D Graphics

Changing edge color for a single entity

The following derived Mesh class demonstrates how to change edge color for a single entity. class MyMesh : Mesh { public Color EdgeColor = Color.Empty; public MyMesh(Mesh another, Color edgeColor) : base(another) { EdgeColor = edgeColor; } protected override void DrawE…

by Alberto Bencivenni | November 24, 2017 | Share

Miscellaneous

Eyeshot issues with Telerik controls

Issue 1: Docking control When using Eyeshot control inside a Telerik docking control, the Eyeshot control disappears due to a dispose call. This behavior is time issue due to the built-in animation of the ToolWindow. Basically, when you docked, a Pane animation is triggered, Close event of the wind…

by Marcello Stagni | October 05, 2017 | Share

Miscellaneous

Immediate mode rendering in WPF

Refers to Eyeshot 10.0.991 and greater. The 3D graphics drawing in the Eyeshot native WPF control is not as fast as the Windows Forms one. Basically, we all need to blame Microsoft and their D3DImage WPF control implementation. The main reason behind this issue is the number of additional passes t…

by Alberto Bencivenni | April 03, 2017 | Share

Miscellaneous

Printing in raster with a given scale

To do a raster printing using a given scale, so that the (scaled) world distances correspond to the distances on paper, you need to use an orthographic camera, then call the Viewport.GetBitmapSizeToPrintInWorldUnits() and use the returned size in the Design.RenderToBitmap().   Example: // Sets an o…

by Luca Cornazzani | May 26, 2015 | Share

Miscellaneous

Vector printing with custom scaling

If you want to print on paper the view displayed in the Design control, you can follow the approach reported in this article. Suppose that your viewport looks like this: and you want to print it on paper in hidden line mode. Your printButton handler should contain the following code lines: private…

by Permanently deleted user | April 11, 2014 | Share