Added triangle rotating pivot controls.
This commit is contained in:
parent
d0d40dc78b
commit
23a8768c97
@ -158,7 +158,7 @@ object EditForm: TEditForm
|
||||
Width = 159
|
||||
Height = 231
|
||||
HorzScrollBar.Visible = False
|
||||
VertScrollBar.Position = 121
|
||||
VertScrollBar.Position = 127
|
||||
VertScrollBar.Smooth = True
|
||||
VertScrollBar.Style = ssFlat
|
||||
VertScrollBar.Tracking = True
|
||||
@ -169,9 +169,9 @@ object EditForm: TEditForm
|
||||
TabOrder = 0
|
||||
object TrianglePanel: TPanel
|
||||
Left = 0
|
||||
Top = -121
|
||||
Top = -127
|
||||
Width = 155
|
||||
Height = 352
|
||||
Height = 400
|
||||
BevelOuter = bvNone
|
||||
TabOrder = 0
|
||||
object Label9: TLabel
|
||||
@ -218,7 +218,7 @@ object EditForm: TEditForm
|
||||
end
|
||||
object btTrgRotateRight: TSpeedButton
|
||||
Left = 90
|
||||
Top = 184
|
||||
Top = 240
|
||||
Width = 33
|
||||
Height = 24
|
||||
Hint = 'Rotate triangle clockwise around its center'
|
||||
@ -238,7 +238,7 @@ object EditForm: TEditForm
|
||||
end
|
||||
object btTrgRotateLeft: TSpeedButton
|
||||
Left = 22
|
||||
Top = 184
|
||||
Top = 240
|
||||
Width = 33
|
||||
Height = 24
|
||||
Hint = 'Rotate triangle counter clockwise around its center'
|
||||
@ -276,7 +276,7 @@ object EditForm: TEditForm
|
||||
end
|
||||
object btTrgMoveUp: TSpeedButton
|
||||
Left = 56
|
||||
Top = 226
|
||||
Top = 282
|
||||
Width = 33
|
||||
Height = 24
|
||||
Hint = 'Move triangle up'
|
||||
@ -314,7 +314,7 @@ object EditForm: TEditForm
|
||||
end
|
||||
object btTrgMoveRight: TSpeedButton
|
||||
Left = 90
|
||||
Top = 250
|
||||
Top = 306
|
||||
Width = 33
|
||||
Height = 24
|
||||
Hint = 'Move triangle right'
|
||||
@ -352,7 +352,7 @@ object EditForm: TEditForm
|
||||
end
|
||||
object btTrgMoveLeft: TSpeedButton
|
||||
Left = 22
|
||||
Top = 250
|
||||
Top = 306
|
||||
Width = 33
|
||||
Height = 24
|
||||
Hint = 'Move triangle left'
|
||||
@ -390,7 +390,7 @@ object EditForm: TEditForm
|
||||
end
|
||||
object btTrgMoveDown: TSpeedButton
|
||||
Left = 56
|
||||
Top = 274
|
||||
Top = 330
|
||||
Width = 33
|
||||
Height = 24
|
||||
Hint = 'Move triangle down'
|
||||
@ -428,7 +428,7 @@ object EditForm: TEditForm
|
||||
end
|
||||
object btTrgScaleUp: TSpeedButton
|
||||
Left = 90
|
||||
Top = 318
|
||||
Top = 374
|
||||
Width = 33
|
||||
Height = 24
|
||||
Hint = 'Scale triangle up'
|
||||
@ -448,7 +448,7 @@ object EditForm: TEditForm
|
||||
end
|
||||
object btTrgScaleDown: TSpeedButton
|
||||
Left = 22
|
||||
Top = 318
|
||||
Top = 374
|
||||
Width = 33
|
||||
Height = 24
|
||||
Hint = 'Scale triangle down'
|
||||
@ -468,7 +468,7 @@ object EditForm: TEditForm
|
||||
end
|
||||
object txtTrgRotateValue: TEdit
|
||||
Left = 56
|
||||
Top = 184
|
||||
Top = 240
|
||||
Width = 33
|
||||
Height = 21
|
||||
TabOrder = 7
|
||||
@ -476,7 +476,7 @@ object EditForm: TEditForm
|
||||
end
|
||||
object txtTrgMoveValue: TEdit
|
||||
Left = 56
|
||||
Top = 250
|
||||
Top = 306
|
||||
Width = 33
|
||||
Height = 21
|
||||
TabOrder = 8
|
||||
@ -549,7 +549,7 @@ object EditForm: TEditForm
|
||||
OnKeyPress = CornerEditKeyPress
|
||||
end
|
||||
object chkPreserve: TCheckBox
|
||||
Left = 28
|
||||
Left = 8
|
||||
Top = 152
|
||||
Width = 105
|
||||
Height = 17
|
||||
@ -560,12 +560,29 @@ object EditForm: TEditForm
|
||||
end
|
||||
object txtTrgScaleValue: TEdit
|
||||
Left = 56
|
||||
Top = 320
|
||||
Top = 376
|
||||
Width = 33
|
||||
Height = 21
|
||||
TabOrder = 9
|
||||
Text = '0.1'
|
||||
end
|
||||
object rgPivot: TRadioGroup
|
||||
Left = 8
|
||||
Top = 176
|
||||
Width = 129
|
||||
Height = 49
|
||||
Caption = ' Rotating pivot : '
|
||||
Columns = 2
|
||||
Ctl3D = True
|
||||
ItemIndex = 3
|
||||
Items.Strings = (
|
||||
'A'
|
||||
'B'
|
||||
'C'
|
||||
'Center')
|
||||
ParentCtl3D = False
|
||||
TabOrder = 10
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -127,6 +127,7 @@ type
|
||||
txtTrgScaleValue: TEdit;
|
||||
btTrgScaleUp: TSpeedButton;
|
||||
btTrgScaleDown: TSpeedButton;
|
||||
rgPivot: TRadioGroup;
|
||||
procedure FormCreate(Sender: TObject);
|
||||
procedure GraphImageMouseMove(Sender: TObject; Shift: TShiftState; X,
|
||||
Y: integer);
|
||||
@ -2045,7 +2046,16 @@ begin
|
||||
end;
|
||||
if offset <> 0 then
|
||||
begin
|
||||
MainTriangles[SelectedTriangle] := RotateTriangleCenter(MainTriangles[SelectedTriangle], (PI/180) * offset);
|
||||
case (rgPivot.ItemIndex) of
|
||||
0: MainTriangles[SelectedTriangle] :=
|
||||
RotateTrianglePoint(MainTriangles[SelectedTriangle], MainTriangles[SelectedTriangle].x[0], MainTriangles[SelectedTriangle].y[0], (PI/180) * offset);
|
||||
1: MainTriangles[SelectedTriangle] :=
|
||||
RotateTrianglePoint(MainTriangles[SelectedTriangle], MainTriangles[SelectedTriangle].x[1], MainTriangles[SelectedTriangle].y[1], (PI/180) * offset);
|
||||
2: MainTriangles[SelectedTriangle] :=
|
||||
RotateTrianglePoint(MainTriangles[SelectedTriangle], MainTriangles[SelectedTriangle].x[2], MainTriangles[SelectedTriangle].y[2], (PI/180) * offset);
|
||||
3: MainTriangles[SelectedTriangle] :=
|
||||
RotateTriangleCenter(MainTriangles[SelectedTriangle], (PI/180) * offset);
|
||||
end;
|
||||
HasChanged := True;
|
||||
UpdateFlame(true);
|
||||
end;
|
||||
@ -2063,7 +2073,16 @@ begin
|
||||
end;
|
||||
if offset <> 0 then
|
||||
begin
|
||||
MainTriangles[SelectedTriangle] := RotateTriangleCenter(MainTriangles[SelectedTriangle], -((PI/180) * offset));
|
||||
case (rgPivot.ItemIndex) of
|
||||
0: MainTriangles[SelectedTriangle] :=
|
||||
RotateTrianglePoint(MainTriangles[SelectedTriangle], MainTriangles[SelectedTriangle].x[0], MainTriangles[SelectedTriangle].y[0], -((PI/180) * offset));
|
||||
1: MainTriangles[SelectedTriangle] :=
|
||||
RotateTrianglePoint(MainTriangles[SelectedTriangle], MainTriangles[SelectedTriangle].x[1], MainTriangles[SelectedTriangle].y[1], -((PI/180) * offset));
|
||||
2: MainTriangles[SelectedTriangle] :=
|
||||
RotateTrianglePoint(MainTriangles[SelectedTriangle], MainTriangles[SelectedTriangle].x[2], MainTriangles[SelectedTriangle].y[2], -((PI/180) * offset));
|
||||
3: MainTriangles[SelectedTriangle] :=
|
||||
RotateTriangleCenter(MainTriangles[SelectedTriangle], -((PI/180) * offset));
|
||||
end;
|
||||
HasChanged := True;
|
||||
UpdateFlame(true);
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user