This is the discussion forum for Helix Toolkit.
For bugs and new features, use the issue tracker located at GitHub.
Also try the chat room!

Remove X Direction Grid Lines

Alex Roschli 4 years ago in Question 0
I am using the Helixtoolkit NuGet package in my Visual Studio C# program and it's working well. I am generating a grid with grid = new GridLinesVisual3D(); but I do not want the grid lines that go in the X Direction, I would like to have grid lines in only the Y Direction. I have looked a the GridLinesVisual3D.cs file and I know exactly what needs to be changed, but I don't know how to change it. Because I am loading in the entire package to Visual Studio, I can't see the individual source files in the program to edit them.

So my question is, what is the best way to go about removing the lines in the X direction.


Order Indiependent Transparency

Terry Price 4 years ago in Question 0

Does Helix 3D support any form of OIT such as depth-peepling?

If not, are there any plans to implement it in the future? It would be hugely helpful for my applicaiton.

If not, is there any way that I can 'tack it on' to the existing framework?

Best Wishes,


Multiline Closed Path Polygons

Michael Powell 4 years ago in Question 0

Please pardon my clumsy use of verbiage here...

I will probably default to the RectangleVisual3D, initially, but I'd like to know whether there is something like a closed-path LinesVisual3D. Could work its way out in 3D, in my case it would be along a 2D plane.

Basically I'd like to render things like triangles, trapezoids, etc. Then be able to potentially specify things like line issues (i.e. brush), and fill.

Thank you...
WPF Media3D

Performance and BoxVisual3D

Anonymous 5 years ago in Question 0
This discussion was imported from CodePlex

peterthesaint wrote at 2014-08-26 13:17:


I am trying to develop an engineering modeling program where all objects are either boxes or rectangels. I decided to use BoxVisual3D but with bigger number of objects, say >1000 I notice significant drop in performance. For curiosity I have installed AB4D PowerToys and with that library I can insert about 3-5 times more Boxes3D without the drop in performance. I have done some tests e.g. created a fresh project with Helix and tweaked some issues like lights and some other common performance enhancing steps but significant difference is still noticeable. Does anybody have any idea why and what can be done about it?


facing 'System.OutOfMemoryException' issue from meshBuilder class

Niteen 4 years ago in Question • updated 4 years ago 1
Hello Sir,

We got the following exception from 'MeshBuilder' class while performing the operation on 3D view model.

Error: 'System.OutOfMemoryException' occurred in mscorlib.dll

Please find the attached screen shot for error exception.

we are appending the mesh object more that 10 lacks in a single mesh builder object. The model first time is loaded but when we trying to perform other operation on model, it will gives above error/exception.

Please find the attached screen shot for drawing model and error exception.


we need your help to resolved this problem. Please reply.

Thanks and regards,
Niteen Patil


How to retrieve info colors / brush from material class

Miller 3 years ago in Question 0


i've some trouble in getting color information ModelUIElement3D.

The question is understand which is the proper color when the user select something in the drawing.

From ModelUIElement3D you can retrieve GEOMETRYMODEL3D and MATERIAL.

But i'm stuck because the Visualstudio doesn't allow me to compare:

" If model.Material = Materials.Blue Then

End If"

The error is : "=" equal isn't allowed for material class.

I've tryied also to set a name to material: "model.Material.SetName("Blue")"

It give me an error saying that name material property is readonly.

Any other advice???



Under review

Need Advice On How To Sync Coordinate Systems

Anonymous 5 years ago in Question • updated by Øystein Bjørke 5 years ago 1
This discussion was imported from CodePlex

BogusException wrote at 2014-07-06 20:41:


I'm still getting using the FlightsDemo to create a proof for a project I want to do. The objective is a rotating globe with the flights on them, just like they are in the demo files included with the product today.

I am running into an issue/situation whereby I can't figure out how to translate the mouse click to the proper coordinates on the Sphere... The biggest demonstration of this issue is this:

-As the Sphere is rotating:
            <EventTrigger RoutedEvent="Canvas.Loaded">
                        <DoubleAnimation x:Name="Rotate360"  From="0" To="360" Duration="0:2:00" AutoReverse="False" 
                                         RepeatBehavior="Forever" Storyboard.TargetName="rotation" 
                                         Storyboard.TargetProperty="Angle" />
<t:SphereVisual3D x:Name="TheEarthSphere" 
                              Material="{StaticResource EarthJPG}"
                              PhiDiv="25" >
                                <AxisAngleRotation3D Axis="0,0,1" Angle="0" x:Name="rotation" />
...the lat & lon at the top left of the WPF Window do NOT update. They are tied to the non-animating coordinate system of the Viewport, which is illustrated by the little cube on the bottom right:


-As the cube is rotating, when I do click on it, based on the current coordinates of the Viewport (little cube, lat & lon at top left of display), that is where the tube will be placed. This means:

-No matter what the rotating sphere is doing, the lines will be placed on the sphere at THOSE coordinates, NOT where he mouse was over when clicked.
-Imagine you are clicking on a rotating sphere in the same (relative) position, say, dead center. The tube (flight) is placed on the rotating sphere, but always in the same place.

I know this is just a matter of finding a way in Helix 3D to rotate the little cube at the bottom right as the sphere is rotating, but there are virtually no docs, and I can't figure out how to tie them together.

Q: In other words, how to make the little navigation cube at the bottom right reflect the position of the sphere as it rotates? Or can I just get the Sphere coordinates from a click somehow?

An example might help.

Here is the window as it starts. Note the nav cube (we'll call it) position at bottom right, and where the sphere (earth) is in it's rotation, as well as the lat & lon at the top left:



You should notice a few things from the above 2 screenshots:
  1. The position of the mouse is (almost) the same, and so is the lat & lon at top left.
  2. The sphere, however, has rotated between these 2 images, and the mouse is obviously over a different lat & lon on the 2nd shot as it was in the 1st.
  3. The nav cube at bottom right stays still.

It appears that the nav cube is for the viewport coordinate system by default (would love to change that to the Sphere).
The Shpere, and it's child material) are rotating fine.
The click/hit point(s), though do NOT reflect the 3D point on the sphere clicked, but rather the 3D point in the viewport coordinate system.
I have even tried to rotate the camera around the Sphere, but I can't find documentation on how to accomplish this (leave Sphere static, rotate the camera in an orbit around sphere, looking at 0,0,0)...

My Request:

Please tell me how to tie the place the mouse is clicked on the sphere with the sphere coordinates of that click/hit.

Any hints, guidance, example greatly appreciated!

P.S. Is there an example of AnimateOpacity?

objo wrote at 2014-07-11 21:55:

Can anyone help on this? Is there a bug? Transform of the model/visual not being included?

BogusException wrote at 2014-09-18 19:00:

Still no thoughts on the question above:

P.S. Is there an example of AnimateOpacity?

What are the Best Types of Charging Electronics?

Ryan Oslov 2 years ago in Question • updated by Emolic Jhonny 4 months ago 2

Why are Charging Electronics so Important?

Charging has become something that almost all of us do and the reason being is that we have lots of devices that require charging. Many of us use smartphones, tablets, and laptops every day and that means we have to make sure that we’re using the correct charging electronic to charge them. With that said, as important as charging has become, the main problem right now is that we don’t really have an idea about what charging electronics on the market are best to use. Since charging is something that has become so normal, we don’t look past what we already use.

That is why it’s important to know what other charging options are available is because there are many other innovations than just the traditionally used USB wall chargers.

What are the Types of Charging Electronics and their Uses?

  1. Power banks are one of the fastest growing charging electronics on the market and the main reason for that is because they’re portable chargers. For the most part, many of us use USB wall chargers and as powerful as those are, in the end, we have to stay stationary to charge our devices while we charge. This can be a problem if we have places to be and things to do. One of the best things about power banks is how their popularity is growing and there are quite a lot of different types of power banks that are now on the market. The two main types are power banks that have low power capacities and ones that have high power capacities. The most used ones are ones that have low power capacities and that’s because they have smaller sizes and lighter weights; so they’re able to fit into your pocket. Then there are power banks that have higher power capacities and those are heavier ones. They have lots of power and more charging ports.
  2. The next most useful charging electronic are Surge Protectors that use USB charging ports. The reason behind that is because most of us use USB wall chargers with our Surge Protectors and that can be a problem. As some USB wall charger cover surrounding AC Outlets on these Surge Protectors and the fact that you’re using an AC Outlet dedicated to just a USB charger. Instead, according to there are now Surge Protectors that use USB ports directly on them and that means you longer have to use a USB wall charger with the Surge Protectors since it’s already built-in. These type of Surge Protectors have multiple charging ports and they also make use of special charging tech like Quick Change to charge those compatible smartphones at their max charging speeds.
  3. One of the most reliable sources of power is the sun and in this case, Solar chargers are able to make use of the sun quite well. That’s because Solar chargers have multiple large solar panels that are able to capture lots of Solar rays at once and that means you can make the most out of the charging experience. Solar chargers are also quite portable because they have lanyard holes that are able to connect to a backpack, have the Solar panels facing out and capture as much as the sun as possible while you’re on the move.



keyboard commands

PUPPICAD 2 years ago in Question 0

I added some commands that use the CTRL key modifier to my application. I want to use CTRL+C for copy selection but it only works if SHIFT key is pressed too.

Every other key command I implemented works even when SHIFT is not pressed.