конвертация DXF Arc в WPF ArcSegment представлена в следующем коде,
else if (entity is DXFLib.DXFArc)
{
DXFLib.DXFArc arc = (DXFLib.DXFArc)entity;
Path path = new Path();
path.Stroke = System.Windows.Media.Brushes.Black;
path.StrokeThickness = 1;
System.Windows.Point endPoint = new System.Windows.Point(
(arc.Center.X.Value + Math.Cos(arc.EndAngle * Math.PI / 180) * arc.Radius) * scaleX,
(arc.Center.Y.Value + Math.Sin(arc.EndAngle * Math.PI / 180) * arc.Radius) * scaleY);
System.Windows.Point startPoint = new System.Windows.Point(
(arc.Center.X.Value + Math.Cos(arc.StartAngle * Math.PI / 180) * arc.Radius) * scaleX,
(arc.Center.Y.Value + Math.Sin(arc.StartAngle * Math.PI / 180) * arc.Radius) * scaleY);
ArcSegment arcSegment = new ArcSegment();
double sweep = 0.0;
if (arc.EndAngle < arc.StartAngle)
sweep = (360 + arc.EndAngle) - arc.StartAngle;
else sweep = Math.Abs(arc.EndAngle - arc.StartAngle);
arcSegment.IsLargeArc = sweep >= 180;
arcSegment.Point = endPoint;
arcSegment.Size = new System.Windows.Size(arc.Radius * scaleX, arc.Radius * scaleY);
arcSegment.SweepDirection = arc.ExtrusionDirection.Z >= 0 ? SweepDirection.Clockwise : SweepDirection.Counterclockwise;
PathGeometry geometry = new PathGeometry();
PathFigure pathFigure = new PathFigure();
pathFigure.StartPoint = startPoint;
pathFigure.Segments.Add(arcSegment);
geometry.Figures.Add(pathFigure);
path.Data = geometry;
canvas.Children.Add(path);
}
}
То есть здесь считывается с DXF файла все арки, они имеют 2 углы, радиус и центр, затем конвертируются в ArcSegment C# Wpf который имеет две точки и радиус. Вопрос в том, как сделать ровно наоборот?
Виртуальный выделенный сервер (VDS) становится отличным выбором
Роюсь , роюсь у https://githubcom/xceedsoftware/DocX и http://cathalscorner
Можно ли объединить все чекбоксы на форме в массив и проверить их с помощью цикла?
А вот вопрос: а если формам не присваивать имя и id, и несколько форм будут содержать одинаковые имена полей(input), не будет ли потом загвоздки...