
rebu1985
Member-
Posts
33 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Articles
Marionette
Store
Everything posted by rebu1985
-
Thanks guys, now it is working. 🙂
-
Filter selection tool
rebu1985 replied to MarcelP102's question in Wishlist - Feature and Content Requests
Hi Jesse, I was checking the differents files and i checked that when you activate the visible mode on the layer on the navigation menu the script works.- 20 replies
-
- selection
- selection tool
-
(and 1 more)
Tagged with:
-
Filter selection tool
rebu1985 replied to MarcelP102's question in Wishlist - Feature and Content Requests
Hi Jesse, I have attached some images. The first and second images show the script working properly, all the elements are located in a one layer and the script works. The third and fourth images show the script without working. I have copied all the elements to others layers and it doesnt work. I am using Vectoworks 2020 and i am using a personal workspace but i have the same problem when i am working on the architect workspace. When i am working on personal drawings with a lot of information it doesnt work either.- 20 replies
-
- selection
- selection tool
-
(and 1 more)
Tagged with:
-
Filter selection tool
rebu1985 replied to MarcelP102's question in Wishlist - Feature and Content Requests
- 20 replies
-
- selection
- selection tool
-
(and 1 more)
Tagged with:
-
Hi guys, I write you because in a newer version of vectorworks I cant run the scrip properly and I dont know why. I have used Pat´s scrip in VW2015 but in version 2020 I have the problems of selecting the layers, the only option I can do is selecting all/none. Can you help me, guys? PROCEDURE LB_LayerList; VAR B1:boolean; dialog1 : LongInt; kImageCheck,kImageBlank,kImageSheet,kImageView : Integer; LayerArray : DYNARRAY[] of String; NumLayers, N1, CheckedLayers : Integer; FirstObjectToCopy : Handle; ThisObjectToCopy : Handle; LayerToCopyFrom : Handle; LayerNameToCopyFrom : String; ThisLayer : String; ThisDuplicate : Handle; {-----------------------------------------------------------------------------} FUNCTION GetPlugInString(ndx :INTEGER) :STRING; BEGIN CASE ndx OF {Static Text} 3001: GetPlugInString := 'OK'; 3002: GetPlugInString := 'Cancel'; 3003: GetPlugInString := 'Layers'; END; END; {----------------------------------------------------------------------------} PROCEDURE Dialog_Setup; VAR cnt : INTEGER; BSB : Boolean; BEGIN dialog1 := CreateResizableLayout (GetPlugInString(3003),TRUE,GetPlugInString(3001),GetPlugInString(3002),TRUE,TRUE); CreateLB(dialog1,4,34,15); CreatePushButton(dialog1,5,'All'); CreatePushButton(dialog1,6,'None'); SetFirstLayoutItem(dialog1, 4); SetBelowItem(dialog1,4,5,0,0); SetBelowItem(dialog1,4,6,0,0); SetRightItem(dialog1,5,6,0,0); SetEdgeBinding(dialog1,5,False,False,False,True); SetEdgeBinding(dialog1,6,False,False,False,True); END; {-----------------------------------------------------------------------------} PROCEDURE Dialog_Handler(VAR item :LONGINT; data :LONGINT); Var ColNum,TempI,I : Integer; SheetTypeIcon : Integer; BSB : Boolean; BSS : String; LayerHand : Handle; LayerName,SelectedIconString : String; SheetIconNumber,SelectedIconNumber : Integer; BEGIN CASE item OF SetupDialogC: BEGIN {These need to be declared as globals otherwise they won't work outside of setup.} kImageCheck := AddLBImage(dialog1,4,1,11022); kImageBlank := AddLBImage(dialog1,4,1,11023); kImageSheet := AddLBImage(dialog1,4,1,11024); kImageView := AddLBImage(dialog1,4,1,11025); ColNum := InsertLBColumn(dialog1,4,0,'Copy To',50); BSB := SetLBControlType(dialog1,4,ColNum,3); BSB := SetLBItemDisplayType(dialog1,4,ColNum,1); BSB := SetLBColumnWidth(dialog1,4,0,0,20); {ColNum := InsertLBColumn(dialog1,4,0,'',50);}{This crashes VW} ColNum := InsertLBColumn(dialog1,4,1,'Layer Name',100); BSB := SetLBControlType(dialog1,4,ColNum,1); BSB := SetLBItemDisplayType(dialog1,4,ColNum,3); BSB := SetLBColumnWidth(dialog1,4,1,1,200); ColNum := InsertLBColumnDataItem(dialog1,4,0,'Checked',kImageCheck,-1,0); ColNum := InsertLBColumnDataItem(dialog1,4,0,'UnChecked',kImageBlank,-1,0); {Traversing from LLayer by PrevObj doesn't work with Sheet Layers} LayerHand := FLayer; I := 0; While LayerHand <> NiL do Begin If GetObjectVariableInt(LayerHand,154) = 2 then SheetTypeIcon := kImageSheet else SheetTypeIcon := kImageView; ColNum := InsertLBColumnDataItem(dialog1,4,1,GetLName(LayerHand),SheetTypeIcon,SheetTypeIcon,0); TempI := InsertLBItem (dialog1, 4, I, GetLName(LayerHand)); BSB := SetLBItemUsingColumnDataItem (dialog1, 4, I, 1, ColNum); BSB := SetLBItemUsingColumnDataItem (dialog1, 4, I, 0, 1); I := I+1; LayerHand := NextObj(LayerHand); End; EnableLBColumnLines(dialog1,4,True); END; 1: BEGIN NumLayers:=GetNumLBItems(dialog1,4); CheckedLayers:=0; Allocate LayerArray[1..NumLayers]; For I := 1 to NumLayers do Begin BSB := GetLBItemInfo(dialog1,4,I-1,1,LayerName,SheetIconNumber); BSB := GetLBItemInfo(dialog1,4,I-1,0,SelectedIconString,SelectedIconNumber); If SelectedIconString = 'Checked' then Begin CheckedLayers := CheckedLayers+1; If SheetIconNumber = kImageSheet then LayerArray[CheckedLayers]:=LayerName; If SheetIconNumber = kImageView then LayerArray[CheckedLayers]:=LayerName; End; {If} End; {For} End; {1} 5: Begin For i:=0 to GetNumLBItems(dialog1, 4)Do Begin BSB:=SetLBItemInfo(dialog1,4,i,0,'Checked',kImageCheck); End; {For} End; {5} 6: Begin For I := 0 to GetNumLBItems(dialog1,4) do Begin BSB:=SetLBItemInfo(dialog1,4,i,0,'Unchecked',kImageBlank); end; {For} end; {6} END; {Case} BSB:=RefreshLB(dialog1,4); END; {Procedure} {-----------------------------------------------------------------------------} function ResourceIsOK :BOOLEAN; BEGIN IF SetVSResourceFile('IP Resources') THEN ResourceIsOK := TRUE ELSE Message('The "IP Resources" file was not found.'); END; {-----------------------------------------------------------------------------} BEGIN {Main} FirstObjectToCopy := FSActLayer; LayerToCopyFrom := ActLayer; LayerNameToCopyFrom := GetLName(LayerToCopyFrom); IF ResourceIsOK THEN Dialog_Setup; IF RunLayoutDialog(dialog1,Dialog_Handler) = 1 THEN BEGIN SysBeep; For N1 := 1 to CheckedLayers do Begin ThisLayer:=LayerArray[N1]; If ThisLayer <> LayerNameToCopyFrom Then Begin ThisObjectToCopy := FirstObjectToCopy; While ThisObjectToCopy <> Nil do Begin ThisDuplicate := CreateDuplicateObject(ThisObjectToCopy,GetLayerByName(ThisLayer)); ThisObjectToCopy := NextSObj(ThisObjectToCopy); End; End; {If} End; {For} END; {If} Wait(1); ClrMessage; END; Run(LB_LayerList);
-
CELLS REFERENCED BETWEEN DATABASE IN A WORKSHEET
rebu1985 replied to rebu1985's topic in General Discussion
I have tried to do that but when I work with Database, the reference doesnt indicate the subrow, just indicate the total of the sum value/item. I would like to indice 'Worksheet-1':A4.1 but it doesnt work. I have resolved it creating two record formats, left and right openings and applying the record format manually to the doors and i dont need to reference the file. -
Hi guys, I am trying to reference cells from different worksheet to obtain the total of doors in a project. The only way that i know its just create a worksheet an copy all the information from the others worksheets. But i am a bit scared of lossing information when i am going to change something because the cells are not connected between them, they are copied. I am going to attach some images. The image 1 includes cells copied from the database of the others images.
-
Hi guys, I have a file A and I have a file B. The file B contains imported layers from file A where all layers are locked because I need to use in Lumion but at the same time it needs to be updated to show the external facade. My problem is when i try to change a class, wall, component, etc on file B because i need for Lumion, automatically it is disappearing when the external reference is updated. If it is any way to keep the new changes on the file B without changing by file A external reference updated? Thanks guys!
-
Hi guys, I would like to know if it is possible to show the information from a layer link in a referenced file. I have a file referenced to another one, where i just want to show the exterior facade. On the other one, the floors are done by layer links because all floors are duplicated. But when i open the file and active all exterior elements (wall, windows, doors, etc.), classes, and all layers, it doesnt show it.
-
Hi guys, I would like to know if there is anyway to indicate tolerance in walls. When i have created walls in different layers or stories, the front view shows a line between them when they should be aligned. You can find below an image of my elevation where i have indicated in yellow the line as partition wall when it should be continuos because they are in the same plane (aligned). Thank you guys,
-
Hi guys, I have done a model in vectorworks using walls, doors and windows. But when i try to insert the option "show interior hinge marker" some window frames change to be invisible. I have attached a few samples below with and without show hinge interior marker included.
-
Hi guys, I have create simple rectangles with different start points. You can see below a sample of a rectangle.I would like to create at the same time a square filled in red which shows me the start point of the rectangle. I have attached an image which shows different options of start point where i would like to locate the red square. I need a reference point on the shape in case i need to rotate, move, etc. Thank you so much, PROCEDURE Rectangle; VAR bc_ht,bc_wid : REAL; use_border,result : BOOLEAN; objname : STRING; oh,rh,wh : HANDLE; BEGIN result:= GetCustomObjectInfo(objname,oh,rh,wh); IF result THEN BEGIN bc_ht := PBOXWIDTH; bc_wid := PLINELENGTH; use_border := PUSE_BORDER; IF use_border THEN BEGIN PushAttrs; FillPat(0); Rect(0,bc_ht/2,bc_wid,-(bc_ht/2)); PopAttrs; END; END; END; Run(Rectangle);
-
Thank you so much Pat, I have used it and it is working perfect! It is what i need it. thanks again!!
-
Hi Pat, I am going to explain it again but you are right. Sorry for my english. I work in 2d all time and both symbols (floor and elevation) and done in plan view 2d. I would like to show a copy of the respective elevation of the window in top view which i have drawn when i click on the window top plan which i have drawn as well on the top view. I have drawn manually around symbols of 30 windows which their elevations. All of them have records formats so i think the best way as you said in connect them by a field and place a copy of the elevation symbol but i dont know how I can do it. Thanks Pat,
-
Hi guys, I was wondering if it is possible to show on the drawing a symbol which i have created when I click on another symbol or write a name located on the record format of another symbol by a vectorscript. I have drawn a basic window shape with some information associated by a record format. At the same time I have drawn the elevation of that window. Both are different symbols. I would like to show on the drawing the elevation when i click on the window by a vectorscript. I have around 20 windows so the idea is to have a general vectorscript to show them or writing something of the record format. I have attached below an image of the idea. Thank you so much guys for your help.
-
I found this topic online and I would like to copy in case someone can help me. "I would like to see the introduction of Rounding Precision similar to that of Dimensions however for Spaces: It is custom here to round off to the nearest square meter however I still want to see when drafting exactly what size the space has with at least an accuracy of 2 decimals." Im counting manually different areas within spaces to calculate the total square meters in a house and it is not the same value than in my worksheet when VW calculates the total. Is it possible to change it? Thanks, xx
-
Script which adds automatically values along a path
rebu1985 replied to rebu1985's topic in Vectorscript
Im using VW 2014 version, so I cant use marionette tool -
Hi guys, I would like to try to get a function or script which helps me to calculate automatically the final value attached to the end of a line adding pre-values along the path. As you can see guys below, depends on the value at the end of a line, the script should recognize the value range and show on the drawing the correct diameter dimension/text. I was thinking if its possible to attach a record format at the beginning of the paths when you select all the lines and create a script which recognize the lines intersections and show the correct value. Thanks guys!!
-
Hi guys, I have done a script to hide some fields of the default PIO 'Desk' because I just need some parameters to work. The plug-in is compiled right but when its not working because nothing is done. My version is VW14. My idea is to create different script for default PIO doors and windows but using a few parameters. My script is below: PROCEDURE Modifydesk; VAR objHd: HANDLE; BEGIN objHd:= GetObject('Desk'); IF objHd=NIL THEN EnableParameter(objHd, 'Leg Height', FALSE); SetParameterVisibility(objHd, 'Leg Height', FALSE); END; RUN (Modifydesk);
-
Thanks guys, i was checking the Resource Browser as you mentioned and it´s true, its really easy to do it manually!!
-
Im using the VW 14 and the only options to choose are Apply, Import and Reference in the Resource Browser so I cant modify manually.
-
Hi guys, I have created a predefined text style to use in my standard dimensions options. I was checking to change the text style manually and i cant do it because when i try it the text style changes to a new undefined one. I would like to know if its possible to create a script with modify any text style (font, size, etc) by myself. I was checking the function 'SetTextStyle' but i am not sure if its the correct one. For example: I have a text style called dimensions with Arial 8pt and bold and i would like to change by Calibri 10 pt and not font style. Thanks!!
-
Thanks for your help guys, Finally I got it! I am carry on checking more scripts. I am so addictive now!! I want to learn more and more!!
-
Hi MullinRJ, I have been working on your comments to do my script and i have done this. I still have some mistakes and i guess its about the array function. Could you help me, please? PROCEDURE dialogl_Main; VAR dialog1 : INTEGER; PROCEDURE dialog1_Setup; BEGIN dialog1 := CreateLayout( 'CreateListBox', FALSE, 'OK', 'Cancel' ); CreateListBoxN( dialog1, 4, 30, 10, TRUE ); SetFirstLayoutItem( dialog1, 4 ); END; PROCEDURE Dialog_Handler(VAR item :LONGINT; data :LONGINT); VAR i : INTEGER; nl : INTEGER; layers : DYNARRAY OF STRING; h : HANDLE; BEGIN CASE item OF SetupDialogC: BEGIN AddChoice( dialog1, 4, 'PLANTA 1', 0 ); AddChoice( dialog1, 4, 'PLANTA 2', 0 ); AddChoice( dialog1, 4, 'PLANTA 3', 0 ); END; 1: BEGIN GetSelectedChoiceInfo(dialog1, 4, 1, i, layers); END; 4: BEGIN nl:=NumLayers; Layers:=GetLNAME (h); DoMenuTextByName('Copy', 0); FOR i:=1 TO nl DO BEGIN DoMenuTextByName('Paste In Place', 0); END; END; BEGIN dialog1_Setup; IF RunLayoutDialog(dialog1, Dialog_Handler) = 1 THEN BEGIN END; RUN(dialogl_Main);
-
hi guys, I have created my dialog code for copying objects to selected layers. All info which i have found its about copying objects to all layers but i would like to know how to do it if I just wanna duplicate to selected ones. I dont know how the script should be to transfer the info from the dialog to the object. PROCEDURE CreateDialog; VAR result : INTEGER; id : INTEGER; BEGIN id := CreateLayout('Revise Layer Link',TRUE,'ok', 'Cancel'); CreateStaticText(id,4,'Layers:',-1); CreatePulldownMenu(id,5,32); CreateGroupBox(id,6,'Layers Options',TRUE); CreateCheckBox(id,7,'Planta Sótano'); CreateCheckBox(id,8,'Planta Baja'); CreateCheckBox(id,9,'Planta 1'); CreateCheckBox(id,10,'Planta 2'); CreateCheckBox(id,11,'Planta 3'); CreateCheckBox(id,12,'Planta 4'); CreateCheckBox(id,13,'Planta 5'); CreateCheckBox(id,14,'Planta 6'); CreateCheckBox(id,15,'Planta 7'); CreateCheckBox(id,16,'Planta 8'); CreateCheckBox(id,17,'Planta Atico'); CreateCheckBox(id,18,'Planta Cubierta'); SetFirstLayoutItem(id, 4); SetBelowItem (id,4,6,0,0); SetFirstGroupItem(id,6,7); SetBelowItem (id,7,8,0,0); SetBelowItem (id,8,9,0,0); SetBelowItem (id,9,10,0,0); SetBelowItem (id,10,11,0,0); SetBelowItem (id,11,12,0,0); SetBelowItem (id,12,13,0,0); SetBelowItem (id,13,14,0,0); SetBelowItem (id,14,15,0,0); SetBelowItem (id,15,16,0,0); SetBelowItem (id,16,17,0,0); SetBelowItem (id,17,18,0,0); SetBelowItem(id,18,30,0,0); SetBelowItem(id,30,40,0,0); result := RunLayoutDialog(id,NIL) END; RUN (CreateDialog);