VS:AppendRoofEdge: Difference between revisions

From Vectorworks Developer
Jump to navigation Jump to search
m (As of Vw 15, ResetObject() is required after creating a roof object.)
 
No edit summary
 
(One intermediate revision by one other user not shown)
Line 60: Line 60:
-----------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------
<sample>
<sample>
{{CreateRoofOb}}
{{CreateRoofObj}}
</sample>
</sample>



Latest revision as of 19:25, 8 December 2015

.VectorScript|VectorScript ..VS:Function Reference|Function Reference ..VS:Function_Reference_Appendix|Appendix

Description

Function AppendRoofEdge creates a new edge in the referenced roof object.

PROCEDURE AppendRoofEdge(
theRoof :HANDLE;
edgePtX,edgePtY :REAL;
slopeAngle :REAL;
projectionDistance :REAL;
eaveHeightDistance :REAL);
def vs.AppendRoofEdge(theRoof, edgePt, slopeAngle, projectionDistance, eaveHeightDistance):
    return None

Parameters

theRoof HANDLE Handle to roof.
edgePt REAL Definition point of roof edge.
slopeAngle REAL Slope of roof edge.
projectionDistance REAL Eave overhang.
eaveHeightDistance REAL Eave height.

Remarks

Vertex is appended to the end of the list of vertices. Vertices define the outline of the roof. Vertices must progress in a counter clock wise direction, when viewed from a top view, otherwise the roof cannot be built.

edgePt: Coordinate point for this edge slope: pitch of this roof edge projection: eave overhang eaveHeight: eave height

Example

VectorScript

PROCEDURE Example;
{ Create a new hatch and add it to the resource list. }
VAR
	roofHandle : HANDLE;
	gabID : INTEGER;
	batID : INTEGER;
	hID : INTEGER;
BEGIN
	roofHandle:=CreateRoof(TRUE,5 1/2",5 1/2",4,9.52627");
	AppendRoofEdge(roofHandle,-77'10",-25'3.18078",45",2'0",10'0");
	AppendRoofEdge(roofHandle,-41'2",-25'3.18078",45",2'0",10'0");
	AppendRoofEdge(roofHandle,-41'2",21'4.81922",45",2'0",10'0");
	AppendRoofEdge(roofHandle,-77'10",21'4.81922",45" ,2'0",10'0");
	gabID:=CreateGableDormer(roofHandle);
	SetGableAttributes(roofHandle,gabID,TRUE,6'0",10'0",2'0",#45,#45);
	SetDormerAttributes(roofHandle,gabID,3,18'4",TRUE,3'0",63,FALSE,
	3'0");
	SetDormerThick(roofHandle, 2",1.83333");
	
	batID := CreateBatDormer(roofHandle);
	SetBatAttributes(roofHandle,batID,TRUE,5'0",10'0",4'0",6'3",2'0",#8);
	SetDormerAttributes(roofHandle,batID,3,18'4",TRUE,3'0",63,FALSE,3'0");
	SetDormerThick(roofHandle, 2",1.83333");
	
	hID := CreateHipDormer(roofHandle);
	SetHipAttributes(roofHandle, hID,TRUE,6'0",10'0",2'0",#45,#45,#45);
	SetDormerAttributes(roofHandle,hID,3,18'4",TRUE,3'0",63,FALSE,3'0");
	SetDormerThick(roofHandle, 2",1.83333");
END;
RUN(Example);

Python

def Example():
	roofHandle = vs.CreateRoof(True,5.5,5.5,4,9.52627)
	vs.AppendRoofEdge(roofHandle,-77*12+10,-25*12+3.18078,45,2*12,10*12)
	vs.AppendRoofEdge(roofHandle,-41*12+2,-25*12+3.18078,45,2*12,10*12)
	vs.AppendRoofEdge(roofHandle,-41*12+2,21*12+4.81922,45,2*12,10*12)
	vs.AppendRoofEdge(roofHandle,-77*12+10,21*12+4.81922,45 ,2*12,10*12)
	
	gabID = vs.CreateGableDormer(roofHandle)
	vs.SetGableAttributes(roofHandle,gabID,True,6*12,10*12,2*12,45,45)
	vs.SetDormerAttributes(roofHandle,gabID,3,18*12+4,True,3*12,63,False,3*12)
	vs.SetDormerThick(roofHandle, 2,1.83333)
	
	batID = vs.CreateBatDormer(roofHandle)
	vs.SetBatAttributes(roofHandle,batID,True,5*12,10*12,4*12,6*12 + 3,2*12,8)
	vs.SetDormerAttributes(roofHandle,batID,3,18*12 + 4,True,3*12,63,False,3*12)
	vs.SetDormerThick(roofHandle, 2,1.83333)
	
	hID = vs.CreateHipDormer(roofHandle)
	vs.SetHipAttributes(roofHandle, hID,True,6*12,10*12,2*12,45,45,45)
	vs.SetDormerAttributes(roofHandle,hID,3,18*12+4,True,3*12,63,False,3*12)
	vs.SetDormerThick(roofHandle, 2,1.83333)
Example()

Version

Availability: from VectorWorks8.0