public override void KeysEventPointedWhatever() { if (KeyCode.N.IsDown() && PointedTriangle != null) { PointedTriangle.InvertNormal(); Dirty = true; } }
public override bool MouseEventPointedTriangle() { if (EditorInputManager.GetMouseButton(0)) { EditedMesh.Dirty |= PointedTriangle.SetSharpCorners(_setTo); } return(false); }
public override void KeysEventPointedTriangle() { if (KeyCode.N.IsDown()) { if (!EditorInputManager.Alt) { var no = PointedTriangle.NumberOf(PointedTriangle.GetClosestTo(MeshMGMT.collisionPosLocal)); PointedTriangle.dominantCorner[no] = !PointedTriangle.dominantCorner[no]; (PointedTriangle.dominantCorner[no] ? "Triangle edge's Normal is now dominant" : "Triangle edge Normal is NO longer dominant").TeachingNotification(); } else { PointedTriangle.InvertNormal(); "Flipping Normals".TeachingNotification(); } EditedMesh.Dirty = true; } }
public override void KeysEventPointedTriangle() { if (KeyCode.Backspace.IsDown() || KeyCode.Delete.IsDown()) { EditedMesh.triangles.Remove(PointedTriangle); foreach (var uv in PointedTriangle.vertexes) { if (uv.meshPoint.vertices.Count == 1 && uv.triangles.Count == 1) { EditedMesh.meshPoints.Remove(uv.meshPoint); } } Dirty = true; return; } if (KeyCode.U.IsDown()) { PointedTriangle.MakeTriangleVertexUnique(PointedUv); Dirty = true; } /* if (KeyCode.N.isDown()) * { * * if (!EditorInputManager.getAltKey()) * { * int no = pointedTriangle.NumberOf(pointedTriangle.GetClosestTo(meshMGMT.collisionPosLocal)); * pointedTriangle.SharpCorner[no] = !pointedTriangle.SharpCorner[no]; * * (pointedTriangle.SharpCorner[no] ? "Triangle edge's Normal is now dominant" : "Triangle edge Normal is NO longer dominant").TeachingNotification(); * } * else * { * pointedTriangle.InvertNormal(); * "Inverting Normals".TeachingNotification(); * } * * meshMGMT.edMesh.dirty = true; * * }*/ }
public override bool MouseEventPointedTriangle() { if (EditorInputManager.GetMouseButton(0)) { if (_mergeUnMerge) { if (EditorInputManager.Shift) { EditedMesh.SetAllVerticesShared(PointedTriangle); } else { EditedMesh.GiveTriangleUniqueVertices(PointedTriangle); } } else { EditedMesh.Dirty |= PointedTriangle.SetSmoothVertices(!EditorInputManager.Shift); } } return(false); }
public override void ManageDragging() { if (PointedTriangle != null && SelectedUv != null) { var uv = SelectedUv.SharedEditedUv; var posUv = PointedTriangle.LocalPosToEditedUv(MeshMGMT.collisionPosLocal); var newUv = uv * 2 - posUv; var isChanged = newUv != _lastCalculatedUv; _lastCalculatedUv = newUv; var trg = MeshEditorManager.target; if (isChanged && !EditorInputManager.GetMouseButtonUp(0)) { var prMesh = GetPreviewMesh; if (prMesh.selectedUv != null) { prMesh.selectedUv.SharedEditedUv = _lastCalculatedUv; trg.SharedMesh = new MeshConstructor(prMesh, trg.MeshProfile, trg.SharedMesh).Construct(); } } } if (EditorInputManager.GetMouseButtonUp(0)) { MeshMGMT.SelectedUv.SharedEditedUv = _lastCalculatedUv; EditedMesh.dirtyUvs = true; Debug.Log("Setting Dirty UV Test"); MeshMGMT.Dragging = false; } if (!EditorInputManager.GetMouseButton(0)) { MeshMGMT.Dragging = false; } }