Testing drawing ray trace vertex data from TriangleShape

This commit is contained in:
larsbrubaker 2017-05-29 16:56:56 -07:00
parent c0831f27db
commit 2d0ce4bccf
3 changed files with 25 additions and 3 deletions

View file

@ -570,6 +570,9 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
BeforeDraw += CreateBooleanTestGeometry;
AfterDraw += RemoveBooleanTestGeometry;
}
AfterDraw += AfterDebugTest;
meshViewerWidget.TrackballTumbleWidget.DrawGlContent += TrackballTumbleWidget_DrawGlContent;
}
@ -1083,6 +1086,25 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
base.OnDraw(graphics2D);
}
private void AfterDebugTest(object sender, DrawEventArgs e)
{
foreach (var bvhAndTransform in Scene?.TraceData().MakeEnumerable())
{
TriangleShape tri = bvhAndTransform.Bvh as TriangleShape;
if (tri != null)
{
for (int i = 0; i < 3; i++)
{
var vertexPos = tri.GetVertex(i);
var screenCenter = Vector3.Transform(vertexPos, bvhAndTransform.TransformToWorld);
var screenPos = meshViewerWidget.TrackballTumbleWidget.GetScreenPosition(screenCenter);
e.graphics2D.Circle(screenPos, 3, RGBA_Bytes.Red);
}
}
}
}
private ViewControls3DButtons? activeButtonBeforeMouseOverride = null;
private ViewControls3DButtons? activeButtonBeforeKeyOverride = null;

View file

@ -329,11 +329,11 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
switch (e.TransformMode)
{
case ViewControls3DButtons.Translate:
gcodeViewWidget.TransformState = ViewGcodeWidget.ETransformState.Move;
if(gcodeViewWidget != null) gcodeViewWidget.TransformState = ViewGcodeWidget.ETransformState.Move;
meshViewerWidget.TrackballTumbleWidget.TransformState = TrackBallController.MouseDownType.Translation;
break;
case ViewControls3DButtons.Scale:
gcodeViewWidget.TransformState = ViewGcodeWidget.ETransformState.Scale;
if (gcodeViewWidget != null) gcodeViewWidget.TransformState = ViewGcodeWidget.ETransformState.Scale;
meshViewerWidget.TrackballTumbleWidget.TransformState = TrackBallController.MouseDownType.Scale;
break;
case ViewControls3DButtons.Rotate:

@ -1 +1 @@
Subproject commit 4065cbd70e13f9abb26610b82eb8038fa3cf6efb
Subproject commit f371813bcf25ddeac939075974558f656ec6cb01