public void GiveLineUniqueVerticles_RefreshTrisListing(LineData ld) { List <Triangle> trs = ld.GetAllTriangles_USES_Tris_Listing(); if (trs.Count != 2) { return; } ld.pnts[0].meshPoint.SmoothNormal = true; ld.pnts[1].meshPoint.SmoothNormal = true; trs[0].GiveUniqueVerticesAgainst(trs[1]); RefresVerticleTrisList(); }
public static void PutEdgeOnLine(LineData ld) { var vrtA = ld.pnts[0].meshPoint; var vrtB = ld.pnts[1].meshPoint; var tris = ld.GetAllTriangles_USES_Tris_Listing(); foreach (var t in tris) { t.edgeWeight[t.GetIndexOfNoOneIn(ld)] = ShiftInvertedVelue;// true; } float edValA = ShiftInvertedVelue; float edValB = ShiftInvertedVelue; if (editingFlexibleEdge) { foreach (var uv in vrtA.uvpoints) { foreach (var t in uv.tris) { var opposite = t.NumberOf(uv); for (int i = 0; i < 3; i++) { if (opposite != i) { edValA = Mathf.Max(edValA, t.edgeWeight[i]); } } } } foreach (var uv in vrtB.uvpoints) { foreach (var t in uv.tris) { var opposite = t.NumberOf(uv); for (int i = 0; i < 3; i++) { if (opposite != i) { edValB = Mathf.Max(edValB, t.edgeWeight[i]); } } } } } vrtA.edgeStrength = edValA; vrtB.edgeStrength = edValB; if (AlsoDoColor) { var col = GlobalBrush.colorLinear.ToGamma(); foreach (Vertex uvi in vrtA.uvpoints) { GlobalBrush.mask.Transfer(ref uvi._color, col); } foreach (Vertex uvi in vrtB.uvpoints) { GlobalBrush.mask.Transfer(ref uvi._color, col); } } MeshMGMT.edMesh.Dirty = true; }