For bugs and new features, use the issue tracker located at GitHub.
Also try the chat room!

3D scatter plots?
cureos wrote at 2014-04-17 18:18:
I am seriously considering replacing my outdated 3D charting library with the Helix 3D Toolkit. However, I have one concern, and I have not been able to find any clarification in this discussion forum or the toolkit samples, nor through a Google search, so here goes:
Is there any support in the Helix 3D Toolkit to draw 3D scatter plots, similar to the MATLAB function scatter3? I am primarily looking for the ability to plot small spheres in the specified XYZ position with different fill colors depending on the point values, like this:
Best regards,
Anders @ Cureos
objo wrote at 2014-04-29 10:24:

CameraController and ManipulationCompleted
mplisov wrote at 2013-03-12 14:35:
I need some event that would be triggered when inertia after moving/zooming camera is finished.
I was hoping that it would be CameraController.ManipulationCompleted, but it doesn't get triggered.
Could you please help me on this?
Best regards Mikhail

Tutorials
elkhalafy wrote at 2014-02-18 13:01:
guys I want to pdf books or video tutorials to learn helix toolkit ?
thanks
__
objo wrote at 2014-02-19 21:01:
See "Other WPF3D links" on the home page for tutorials on the WPF 3D model. I really recommend Petzold's book!
elkhalafy wrote at 2014-02-20 12:08:

How to select models separately in HelixViewport3D while cameramode in walkaround?
I want to move object in viewport separately but when I load two model while cameramode is "walkaround" it moves both objects together. How to move each model separately.
Note: I can select each model via hit testing method.

Cross sectional view in Cube using Helix in WPF
terry_513 wrote at 2014-02-06 15:30:
Please suggest a way to implement the above.

Polygon3D
behnam263 wrote at 2014-07-01 21:31:
for example a hexagon
objo wrote at 2014-07-02 13:08:
MeshBuilder.AddPolygon
for a method that tries to do this for simple polygons!
Zoom issue
scadavid wrote at 2012-06-28 23:15:
Thanks for this great tool.
I am having a zoom issue with the DepthSensorDemo. Whenever the camera position is set to a new location it is not possible to zoom in to the full extent. For instance, when setting the DefaultCamera in code behind as such:
Viewport.DefaultCamera = new PerspectiveCamera(new Point3D(0, -10, 0), new Vector3D(0, 6, 0), new Vector3D(0, 0, 1), 57);
One will notice that upon resetting the camera view it is not possible to zoom in to the full extent. It appears to me as if the zoom delta does not update upon setting a new camera position. Am I missing something?
Thanks in advance!
Steven
objo wrote at 2012-07-07 01:37:
In the "Inspect" zoom mode you will move the camera towards the target point (CameraPosition+LookDirection), is your target point correct?
scadavid wrote at 2012-07-10 22:56:
Hello objo,
If what you mean by target point is CameraTarget then yes, CameraTarget = CameraPosition+LookDirection
But I am unable to advance with the zoom towards the target point/surface.
Thanks,
Steven
scadavid wrote at 2012-07-10 23:15:
Hi Objo. Okay, I set CameraTarget to the target point position (!= CameraPosition+LookDirection) and that seems to work. So should I set CameraTarget to the intersection of the target surface and CameraPosition+LookDirection whenever I move the camera? Thanks

Database view at run time
mateovidro wrote at 2012-04-13 22:48:
Hi all,
Good job, I am new to the development
and started with WPF in
C #, I can create a small application
and export .obj files
but:
1. When loading a file. obj
will change the texture Helixviewport3d
blue. Where I can change to white
by default?
2. When I load the
obj. of Viewport3D. What is the best
way to save the file, some text and some
trace of the line? (Access, SQL, compact, etc)
3. Where do I get an example
to make this data link (code) ?
Thanks for the help
Novice
objo wrote at 2012-04-14 00:23:
1. The ObjReader class has a property DefaultColor where you can set the color of elements that don't have materials assigned.
The ObjExporter should export the materials defined in your Model3D. I think it supports all kinds of materials, for complex materials (e.g. gradients) it will export an image file.
2. Currently the ObjExporter only supports writing to files (the .obj itself could be written to a stream, but it also needs to write material files...) If you just need to persist your model - try serializing the Xaml of the Viewport3D (see the XamlExporter class).
3. Sorry, I have not planned examples with databases in this library.
mateovidro wrote at 2012-04-14 14:20:
Thanks Objo i'm really grateful
for your help
mateovidro wrote at 2012-12-07 00:59:
Hi, objo
I already Viewport3D serialize XAML at runtime. I try to show my models in a simple application,
I just want to save and load models with some additional text. This is my code :(btn events)
private void button1_Click(object sender, RoutedEventArgs e) { Viewport3D viewport = this.view1.Viewport; object obj = viewport; FileStream fs = new FileStream(@"C:\test.txt", FileMode.Create, FileAccess.Write); string savedview = XamlWriter.Save(obj); byte[] byts = System.Text.ASCIIEncoding.ASCII.GetBytes(savedview); fs.Write(byts,0 ,byts.Length); fs.Close(); }
private void button2_Click(object sender, RoutedEventArgs e) { FileStream fs = new FileStream(@"C:\Users\MateoLab\Documents\test.txt", FileMode.Open, FileAccess.Read); Viewport3D vp = XamlReader.Load(fs) as Viewport3D; //Move the child visuals to a temporary collection. List<Visual3D> items = new List<Visual3D>(); foreach (Visual3D visual in vp.Children) { items.Add(visual); } //"Detach" the visuals from the original parent. vp.Children.Clear(); //Now, put it in the destination viewport. foreach (var item in items) { view1.Children.Add(item); } }
thanks

use CuttingPlanes but completely
zbw911 wrote at 2013-08-21 11:01:
<h:HelixViewport3D x:Name="view1" CameraMode="Inspect" CameraRotationMode="Trackball" ModelUpDirection="0,1,0">
<h:DefaultLights/>
<h:CuttingPlaneGroup x:Name="cuttingGroup1" IsEnabled="True">
<h:CuttingPlaneGroup.CuttingPlanes>
<!--<h:Plane3D Normal="-1,-1,0"/>-->
<h:Plane3D Normal="0.6149556716972341,-0.6228702238113956,-0.48359301704692287"/> <!--</h:CuttingPlaneGroup.CuttingPlanes>-->
<h:FileModelVisual3D x:Name="model1" Source="Source/HelixToolkit.Wpf.Tests/Models/obj/cornell_box.obj"/>
</h:CuttingPlaneGroup>
</h:HelixViewport3D>
zbw911 wrote at 2013-08-23 02:59:
objo wrote at 2013-09-05 08:08:

SharpDX container structure
eonxxx wrote at 2014-03-06 22:48:
in sharpDX, is there a container structure, like <ModelVisual3D> in Media3D or >SortingVisual3D> in HelixWPF?
i would like to be able to layer/switch on off groups of MeshModels and maybe lights, etc.
something like:
<layer1>
<model1/>
<model2/>
<model3/>
</layer1>
<layer2>
<model4/>
<model5/>
<model6/>
</layer2>
<layer3>
<model7/>
<model8/>
<model9/>
</layer3>
maybe am I'm too blind to see?bye
eonxxx
Lolipedobear wrote at 2014-03-07 07:09:
eonxxx wrote at 2014-03-07 19:57:
Gonna check it.
Customer support service by UserEcho