Template:AddSurface: Difference between revisions

From Vectorworks Developer
Jump to navigation Jump to search
No edit summary
m (fix typo)
 
Line 24: Line 24:
vs.DSelectAll()
vs.DSelectAll()


def reultCallback1():
def resultCallback1():
h1 = vs.FSActLayer()
h1 = vs.FSActLayer()
vs.DSelectAll()
vs.DSelectAll()
def reultCallback2():
def resultCallback2():
h2 = vs.FSActLayer()
h2 = vs.FSActLayer()
h3 = vs.AddSurface(h1, h2)
h3 = vs.AddSurface(h1, h2)
Line 35: Line 35:
vs.CallTool(-203, reultCallback2)
vs.CallTool(-203, resultCallback2)
vs.CallTool(-203, reultCallback1)
vs.CallTool(-203, resultCallback1)


Example()
Example()
</code>
</code>

Latest revision as of 04:13, 21 January 2022

VectorScript

PROCEDURE AddSurfaceExample;
VAR
	h1, h2, h3 :HANDLE;
BEGIN
	DSelectAll;
	CallTool(-203);
	h1 := FSActLayer;
	DSelectAll;
	CallTool(-203);
	h2 := FSActLayer;
	h3 := AddSurface(h1, h2);
	IF h3 <> nil THEN SetFPat(h3, 5);
END;
RUN(AddSurfaceExample);

Python

The python code will not pause for the execution of CallTool, that's why it uses a callback mechanism for the script to know when the temp tool has finished.

# this will not be called prior Vectorworks 2022 SP3
# as the calback functions will not be executed prior to that version
def Example():
	vs.DSelectAll()

	def resultCallback1():
		h1 = vs.FSActLayer()
		vs.DSelectAll()
		
		def resultCallback2():
			h2 = vs.FSActLayer()
			h3 = vs.AddSurface(h1, h2)
			if h3 != None :  
				vs.SetFPat(h3, 5)
		
		
		vs.CallTool(-203, resultCallback2)
			
	vs.CallTool(-203, resultCallback1)

Example()