Я пытаюсь создать навигационную сетку на Autodesk Naviswork, используя Eyeshot 12.0.113.0 beta.
Я создал область, используя вершины, но результирующая область очень немного отличается.
(я хочу использовать Region.Difference()
используя регион.)
почему вершины немного изменились?
пример)
public void testFunc()
{
var test = new List<Point3D>()
{
new Point3D(-50, -50, 0),
new Point3D(-50, 50, 0),
new Point3D(20.7107, 50, 70.7107),
new Point3D(20.7107, -50, 70.7107)
};
var region = CreateRegion(test);
region.Regen(0.0);
}
public static Region CreateRegion(List<Point3D> verteses)
{
var curves = new List<ICurve>();
for (int i = 1; i < verteses.Count; i++)
{
curves.Add(new Line(verteses[i - 1], verteses[i]));
}
curves.Add(new Line(verteses.Last(), verteses[0]));
return new Region(new CompositeCurve(curves, true));
}
я ожидаю, что результат будет:
[0]: {-50, -50, 0}
[1]: {-50, 50, 0}
[2]: {20.7107, 50, 70.7107}
[3]: {20.7107, -50, 70.7107}
но region.Vertices
Результат:
[0]: {-50, -50, -2.13163e-14}
[1]: {-50, 50,-3,55271e-15}
[2]: {20,7107, 50, 70,7107}
[3]: {20,7107, -50, 70,7107}
(А region.Plane.Equation
составляетразница тоже.)