Jump to content


  • Posts

  • Joined

  • Last visited

Everything posted by rebu1985

  1. Hi guys, I have been working on the script and i have done this one. The script is still wrong and I dont know the answer. Could you help me guys, please? PROCEDURE CreateDialog; VAR h: HANDLE; nl,i,a: INTEGER; layer : STRING; dupl,go,ok : BOOLEAN; Layers: DYNARRAY OF STRING; FUNCTION result : INTEGER; VAR id : INTEGER; BEGIN id := CreateLayout('Revise Layer Link',TRUE,'ok', 'Cancel'); CreateStaticText(id,4,'Layers:',-1); CreatePulldownMenu(id,5,32); CreateCheckBox(dialogID,30,'Follow objects'); CreateCheckBox(id,40,'duplicate objects'); 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); SetHelpString(a,'Select a layer to transfer your selected object'); SetHelpString(30,'Go to the selected option with the actual visibility settings'); SetHelpString(40,'Select to duplicate your selected object'); result := RunLayoutDialog(id,NIL) END; Procedure GetLayers; BEGIN nl:= NumLayers; ALLOCATE Layers[1..nl]; h:=FLayer; For i:=1 TO nl DO BEGIN Layers:=GetLNAME(h); END; END; Procedure Drive_LayerClass; VAR item: LONGINT; data: LONGINT; BEGIN CASE item OF SetupDialogC BEGIN GetLayers; IF Layers=layer THEN SELChoice(a,i,ok); END; OK:=TRUE; END; BEGIN GetSelChoice(a,0,i,Layers); go:=ItemSel(30); dupl:=ItemSel(40); END; END; END; END; RUN(CreateDialog);
  2. Hi guys, I have found in the forum a topic which i would like to know because it would be really useful for me. You can find below: Copy object(s) to Paste (this step is performed pre vs execution) Execute vs 1. VS Brings up a dialog window with available design and sheet layers 2. User selects layer(s) on to which the object(s) to be pasted in place 3. Click "OK" 4. Layer visibility set to "Active Only", the script activates each selected layer in turn and pastes in place initially copied object(s) The purpose of this script its to have some objects (stairs, lifts, structure,etc) of a building keep in the same position in different design layers (they work as floor levels). Laura
  3. Thank you so much Mullin for you help, Using your script i have created two kind of scripts in case i need to use them individually. One does on/classes and the other uses the bucket mode. Its easier for me right now designing the scripts one per one to learn.
  4. Hi Pat, I am so interested in this script as well. All time i have to copy and paste layer per layer each object and I would like to know if its any option to select multiple layers at the same time. Thanks, Laura
  5. Thanks Hippocode, I was thinking to do that or convert to property line as well. I have created the script below but something is wrong because the second part of the script is not working. - I would like to show the visibility on of class called 0Muros at the same time than the active class 0Sup and hide the others but when the script just works showing the visibility of the 0sup and all the others are hidden. - I tried to add more classes as ShowClass((('0Muros') & ('0Muros2'))); but script indicates that i need a string. Could you help me, please? PROCEDURE xxx; VAR H :Handle; Active_class : String; BEGIN H := FActLayer; Active_class:= GetClass(H); NameClass('0Sup'); SetClassOptions(1); IF ((GetCVis('Active_class')) = 0) THEN Begin ShowClass('0Muros'); CallTool(-207); { Polygon tool, Bucket mode } DelObject(FActLayer); end; END; Run(xxx);
  6. Thank you guys for your help!! I have created this script but I would like to ask you 2 questions if you can help me - I would like to show another extra class class called 0Door plus the active one 0Wall. - I would like to show a label as the space function indicating the Room and the area. I was thinking to convert this script to Space but i am not sure what is easier and better. PROCEDURE xxx; VAR H, H1 :Handle; Active_class : String; BEGIN H := FActLayer; Active_class:= GetClass(H1); NameClass('0Wall'); SetClassOptions(1); CallTool(-207); { Polygon tool, Bucket mode } Message ('Area = ', HAreaN(FActLayer)); DelObject(FActLayer); END; Run(xxx);
  7. Thanks for your help but i think what i need its easier because i have used simple 2d rectangles as walls. What i was thinking it was to create a script to define a polyline as the contours when you point the area predefined by the rectangles and then use another script to convert to space or using the function convert objects to shapes.
  8. Hi guys, I would like to create a script similar than the SPACE function but instead of creating the polygon manually I would like to point an area and get the space called room defined by objects called walls. My main point is to save time to calculate square meters of different rooms of a flat. Thanks guys!! Laura
  • Create New...