개정판 26417dc9
Fix: TriControl의 고정 비율로 크기 조정 기능 추가
Change-Id: Ieca012eeef0d91fe67b47351cca723081b55d957
MarkupToPDF/Controls/Shape/TriControl.cs | ||
---|---|---|
445 | 445 |
this.EndPoint = tmp; |
446 | 446 |
|
447 | 447 |
List<Point> Points = this.GetRegularTrianglePoints(this.StartPoint, this.EndPoint); |
448 |
if (2 == Points.Count())
|
|
448 |
if (2 == Points.Count) |
|
449 | 449 |
{ |
450 | 450 |
this.MidPoint = Points[0]; |
451 | 451 |
this.EndPoint = Points[1]; |
... | ... | |
473 | 473 |
selected.X += dx; |
474 | 474 |
selected.Y += dy; |
475 | 475 |
|
476 |
var vFirstPoint = (this as IPath).PointSet.FindAll(x => x == pt); |
|
477 |
int iIndex = 0; |
|
478 |
if (vFirstPoint != null && vFirstPoint.Count > 0) |
|
476 |
int iIndex = (this as IPath).PointSet.FindIndex(x => x == pt); |
|
477 |
if (bAxisLocked) |
|
479 | 478 |
{ |
480 |
iIndex = (this as IPath).PointSet.IndexOf(vFirstPoint.FirstOrDefault()); |
|
481 |
} |
|
479 |
this.StartPoint = selected; |
|
482 | 480 |
|
483 |
for (int i = 0; i < (this as IPath).PointSet.Count; i++) |
|
481 |
int PrevIdx = (iIndex + this.PointSet.Count - 1) % this.PointSet.Count; |
|
482 |
int NextIdx = (iIndex + 1) % this.PointSet.Count; |
|
483 |
var end = new Point((PointSet[PrevIdx].X + PointSet[NextIdx].X) * 0.5, (PointSet[PrevIdx].Y + PointSet[NextIdx].Y) * 0.5); |
|
484 |
|
|
485 |
List<Point> Points = this.GetRegularTrianglePoints(selected, end); |
|
486 |
if (2 == Points.Count) |
|
487 |
{ |
|
488 |
PointSet[PrevIdx] = Points[0]; |
|
489 |
PointSet[iIndex] = selected; |
|
490 |
PointSet[NextIdx] = Points[1]; |
|
491 |
} |
|
492 |
} |
|
493 |
else |
|
484 | 494 |
{ |
485 |
if (i == iIndex)
|
|
495 |
for (int i = 0; i < (this as IPath).PointSet.Count; i++)
|
|
486 | 496 |
{ |
487 |
if (pt.Equals((this as IPath).PointSet[i]))
|
|
497 |
if (i == iIndex)
|
|
488 | 498 |
{ |
489 |
(this as IPath).PointSet[i] = selected; |
|
499 |
if (pt.Equals((this as IPath).PointSet[i])) |
|
500 |
{ |
|
501 |
(this as IPath).PointSet[i] = selected; |
|
502 |
} |
|
490 | 503 |
} |
491 | 504 |
} |
492 | 505 |
} |
506 |
|
|
493 | 507 |
this.UpdateControl(); |
494 | 508 |
} |
495 | 509 |
|
내보내기 Unified diff