GetRect
...
Prompts the user to click 2 points on the active plan to define a rectangle and returns the coordinates in p1 and p2.
...
- Create a New Form application
- Add a button to the form
- Add PlanSwift to reference (Planswift9_tlb in the uses)
- Copy code to button onclick event
API Calls
Delphi
Code Block |
---|
language | delphi |
---|
theme | RDark |
---|
firstline | 1 |
---|
title | Using PlanSwift Object Model |
---|
linenumbers | true |
---|
collapse | true |
---|
|
// PlanSwift Code:
var
x1, x2, y1, y2: double;
begin
if GetRect(x1, y1, x2, y2, 'Click each corner of a rectangle.') = 1 then
begin
Showmessage('Draw rectangle here');
end
else
begin
Showmessage('Canceled');
end;
end;
//FreshDesk Code:
procedure TForm1.psGetRect(Sender: TObject);
var
ps: IPlanSwift;
Est,sect,Area: IItem;
psline: ILine;
pt1,pt2: IPoint;
begin
//Get Planswift Interface
ps := CoPlanswift.Create;
//Place planswift into update mode
ps.BeginUpdate;
// Get the Takeoff Folder (Estimating Tab in Planswift);
Est := ps.GetItem('Job\Takeoff');
//Create a New Area Item in the Estimating Tab
Area := Est.NewItem('Area','Get Rect Demo');
//Create a new Section for the Area
sect := Area.NewSection('Get Rect Demo Section');
//Call the Get Rect functions
psline := ps.GetRect('Draw Area');
//Get the two points from the iLine Returned by the GetRect function
pt1 := psline.Point1;
pt2 := psline.Point2;
//Add Points to section to create a box
sect.NewPoint(pt1.X,pt1.y);
sect.NewPoint(pt2.X,pt1.y);
sect.NewPoint(pt2.X,pt2.y);
sect.NewPoint(pt1.X,pt2.y);
sect.NewPoint(pt1.X,pt1.y);
//EndUpdate;
ps.EndUpdate;
//Free the Planswift Interface
ps := nil;
end; |
C#
Code Block |
---|
language | c# |
---|
theme | RDark |
---|
firstline | 1 |
---|
title | Using IItem Object Model |
---|
linenumbers | true |
---|
collapse | true |
---|
|
public class PlanswiftApi
{
private PlanSwift Planswift { get; }
public PlanSwiftApi()
{
Planswift = new PlanSwift();
}
} |
Code Block |
---|
language | c# |
---|
theme | RDark |
---|
firstline | 1 |
---|
title | Using PlanSwift Object Model |
---|
linenumbers | true |
---|
|
Coming soon |
VB/VBA (OLE)
Code Block |
---|
language | vb |
---|
firstline | 1 |
---|
title | Using IItem Object Model |
---|
linenumbers | true |
---|
|
Coming soon |
Code Block |
---|
language | vb |
---|
firstline | 1 |
---|
title | Using PlanSwift Object Model |
---|
linenumbers | true |
---|
|
Coming soon |