Jump to content


  • Posts

  • Joined

  • Last visited


2 Neutral

Personal Information

  • Location

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. 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.
  2. 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.
  3. Hi guys, I dont know why it is showing this message when i am using the scrip.
  4. 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);
  5. 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.
  6. 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.
  7. 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!
  8. 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.
  9. 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,
  10. 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.
  11. 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);
  12. Thank you so much Pat, I have used it and it is working perfect! It is what i need it. thanks again!!
  13. 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,
  14. 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.
  • Create New...