_c_ Posted May 19, 2022 Share Posted May 19, 2022 (edited) In case you didn't notice, round walls don't respond any longer to the flag 89. Now they are all object type 68. All your scripts relying on objectType =89 are broken. Similarly, in Worksheets you cannot restrict your criteria to T=89 or ROUNDWALL. Searching for some sort of identifier I found this approach with GetArc, do you have any better? GetVersionEx(major, minor, maintenance, platf, build); vwVersion := Str2num(Concat(major, minor, maintenance)); {...} IF vwVersion < 2700 THEN isRoundWall := (GetTypeN(wallHandle) = 89) ELSE BEGIN GetArc(wallHandle, startAng, endAng); isRoundWall := (startAng + endAng <> 0); END; Edited May 19, 2022 by _c_ Quote Link to comment
Vectorworks, Inc Employee Julian_Carr Posted May 19, 2022 Vectorworks, Inc Employee Share Posted May 19, 2022 Use GetWallPathType(): https://developer.vectorworks.net/index.php/VS:GetWallPathType 1 Quote Link to comment
Vectorworks, Inc Employee Julian_Carr Posted May 19, 2022 Vectorworks, Inc Employee Share Posted May 19, 2022 Script? Procedure WSGetWallType; VAR s1 : STRING; BEGIN CASE GetWallPathType(WSScript_GetObject) OF 0: s1 := 'Straight'; 1: s1 := 'Round'; END; WSScript_SetResStr(s1); END; Run(WSGetWallType); Quote Link to comment
_c_ Posted May 19, 2022 Author Share Posted May 19, 2022 Thank you Julian, I think we need that number back. It didn't hurt in the least and there was no reason to drop it. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.