Some eval questions
#2
The Ab3d.PowerToys and Ab3d.DXEngine are two separate products. The Ab3d.PowerToys is the ultimate 3D helper library that greatly implies working with 3D graphics. It uses WPF 3D rendering engine (based on DirectX 9 and decent for simpler 3D scenes). The Ab3d.DXEngine is a hight performance DirectX 11 based rendering engine that can render the same 3D scene that is defined by Ab3d.PowerToys and WPF 3D objects. But rendering is much faster and with much better quality. The Ab3d.DXEngine also defined its own objects that can be used to define the 3D scene and provide some additional optimization and visualization options: object instancing, physically based rendering materials, etc.

I recommend checking both Ab3d.PowerToys and Ab3d.DXEngine samples project to get a better understanding of what each library provides.


You have two options to specify custom up axis:
1) You can add a root matrix transformation that transforms from Z up to Y up. This is demonstrated in the "Cameras / Z Up axis with global transform" sample in the Ab3d.PowerToys samples project. 
2) You can use FreeCamera with RotationUpAxis set to (0, 0, 1). This is demonstrated in the "Cameras / Z Up axis with FreeCamera" sample in the Ab3d.PowerToys samples project. Note that this technique does not yet work with ViewCubeCamera controller. But this has been already fixed and will be available in the new version that will be released in November (you can get a pre-release version on request).


You have multiple options for hit testing when using Ab3d.DXEngine. They are demonstrated in the "Ab3d.DXEngine hit testing" section of the samples. I would recommend subscribing to MouseDown, MouseUp and MouseMove events and using GetClosestHitObject method. From the result object, you can read HitGeometryModel3D objects - this object defines the Geometry property that provides the MeshGeometry3D with Positions, Normals, TextureCoordinates and TriangleIndices - this can be used to get the normal of the hit triangle (the hit TriangleIndex can be read from the hit result). You can check that in the "Ab3d.DXEngine hit testing" sample.


"Can you give any guidance on if it would be reasonable/possible to be able to draw a polyline (or some similar feature) along a mesh, between two points?"

You have many options to draw lines, multi-lines, polylines, lines with arrows. See "Basic use with Ab3d.PowerToys / Lines3D sample". With using Ab3d.DXEngine you can also render lines with different start and end colors and with line patterns and use line depth bias. You can also render lines on top of other objects or hidden lines. For those samples please check the "Improved visuals" section.

But you have probably already done this so I am curious if I am understanding the question correctly.
Andrej Benedik
  


Messages In This Thread
Some eval questions - by mjtrainor - 10-28-2021, 07:34 PM
RE: Some eval questions - by abenedik - 10-29-2021, 08:59 AM
RE: Some eval questions - by mjtrainor - 11-02-2021, 10:20 PM
RE: Some eval questions - by abenedik - 11-03-2021, 03:16 PM
RE: Some eval questions - by mjtrainor - 11-04-2021, 01:42 PM

Forum Jump:


Users browsing this thread:
1 Guest(s)