Migrating to AC20

Viewing 8 reply threads
  • Author
    Posts
    • #2609
      Laura Yanoviak
      Participant

      Not sure where to post this question, but the problem is affecting graphical editing:

      I understand that there are now restrictions of Global Variables and Requests used in the Parameter Script (and Master Scripts used as a Parameter Script). The attached library part works fine in AC19, but the editable hotspots are all wonky in AC20.

      Is this due to this new restriction, or some other migration issue? I just want a better understanding before starting to poke around all of my custom objects — thanks, LJY.

      MacBook Pro 2.7 GHz Intel Core i7, 16 GB of RAM
      AC17 US (5019) AC18 US (5100) AC19 US (3003) AC20 US (3012) on Mac OS X 10.10.3

    • #2610
      Dominika Bobály
      Keymaster

      Laura,
      please upload the file in .zip (.gsm is not allowed in this forum engine), or send it to the email address of GDLCenter. Thanks.

      Dominika Bobály
      Library Developer, Library Team
      GRAPHISOFT SE

    • #2611
      Laura Yanoviak
      Participant

      Yep — just noticed that — hereyago…

      MacBook Pro 2.7 GHz Intel Core i7, 16 GB of RAM
      AC17 US (5019) AC18 US (5100) AC19 US (3003) AC20 US (3012) on Mac OS X 10.10.3

    • #2613
      Barry Kelly
      Participant

      Laura,
      Do you mean that the arrow head moves when you stretch the text hotspot?
      If so that is happening to me using your object in 18, 19 and 20 – they are all working the same.
      I don’t see any problems with GLOB or REQUEST in the master/parameter scripts.
      Those you have used are allowed (although judging from my other posts I am no expert in this field!).

      It seems to me the problem is with the 2D hotspots in that the one for the text position is altering the value for the arrow head.
      I haven’t got time to dig into it in detail though just at the moment but hope this helps.

      Barry.

      Versions 6.5 to 22
      Dell XPS- i7-6700 @ 3.4Ghz, 16GB ram, GeForce GTX 960 (2GB), Windows 10
      Dell Precision M6800 - i7 4700MQ @ 2.40GHz, 16GB RAM, AMD FirePro M6100 (2GB), Windows 7 64bit

      • #2614
        Dominika Bobály
        Keymaster

        A_ is used in the parameter script, which is GLOB_SCALE in old form. That may cause problems: its default value is set to 100 in paramscript, so your object works fine in 1:100, but starts to behave strangely in any other scale.
        The warning is not “visible”, because you use the global in a valid condition, and this specific warning only works while interpreting the script (this was necessary because master script can use restricted globals in script-type dependent conditional expressions).

        Dominika Bobály
        Library Developer, Library Team
        GRAPHISOFT SE

    • #2615
      Barry Kelly
      Participant

      A_ is used in the parameter script, which is GLOB_SCALE in old form.

      Thanks for pointing this out – it is a good lesson.
      I now must remember to search for the old form of GLOBALS when fixing up my library parts.
      I might have missed this otherwise.

      Barry.

      Versions 6.5 to 22
      Dell XPS- i7-6700 @ 3.4Ghz, 16GB ram, GeForce GTX 960 (2GB), Windows 10
      Dell Precision M6800 - i7 4700MQ @ 2.40GHz, 16GB RAM, AMD FirePro M6100 (2GB), Windows 7 64bit

    • #2616
      Dominika Bobály
      Keymaster

      To have paper scale editable hotspots (which show mm in the tracker), you have to do the following:

      • add a real type parameter to use as meter in GDL script (“paperSize_M”)
      • add a real type parameter to use as millimeter for paper scale display (“paperSize_Mm”)
      • connect the two parameters in parameter script (with GLOB_MODPAR_NAME, using a *1000 multiplier or divider)
      • write an editable hotspot trio for the meter-substitute parameter in 2D, use the 1024 flag
      • the hotspot’s displayparam should be the millimeter-representative
      • for the actual drawing, use a variable in 2D, which you calculate from the parameter “paperSize_Mm” using GLOB_SCALE (paperToModel in our scripts)

      If you use the 1024 flag, the edited hotspot will be calculated by ARCHICAD to meters in paper space, according to GLOB_SCALE automatically, so you do not need to use GLOB_SCALE in parameter script to connect the model-size and paper-size parameter.
      Check out the Multileader Label object in the official library, it has this functionality implemented.
      The flag 1024 can be checked out here.

      Dominika Bobály
      Library Developer, Library Team
      GRAPHISOFT SE

    • #2622
      Laura Yanoviak
      Participant

      Attached is the updated object. I replaced the A_ with GLOB_SCALE (good-to-know — I didn’t realize this could have adverse affects) and hid the base hotspot at the starting point of the leader (not sure why I had had it editable — I made this object for AC12 and haven’t used it in years).

      My concern is: why does the “rubber band” follow the cursor in AC19 (on the left in the attached screenshot) but not in AC20 (on the right)?

      MacBook Pro 2.7 GHz Intel Core i7, 16 GB of RAM
      AC17 US (5019) AC18 US (5100) AC19 US (3003) AC20 US (3012) on Mac OS X 10.10.3

    • #2624
      Laura Yanoviak
      Participant

      I thought it was attached…

      MacBook Pro 2.7 GHz Intel Core i7, 16 GB of RAM
      AC17 US (5019) AC18 US (5100) AC19 US (3003) AC20 US (3012) on Mac OS X 10.10.3

      • #2626
        Dominika Bobály
        Keymaster

        Laura,
        the problem is not that you used the old form of GLOB_SCALE in the paramscript, but that you used it at all. It’s still there, causing the “rubber band” to fall off in any other scale but 1:100 (that is the dummy default of this global in paramscript: it’s not containing an up-to-date value any more in AC20).
        If I’m correct, you use the GLOB_SCALE to keep your object in paper size. You can do that without this global, see my post a bit further up (about editable hotspots for paper size). Sorry if I did not get your intention, but hopefully that will solve your problems with the object.

        Dominika Bobály
        Library Developer, Library Team
        GRAPHISOFT SE

    • #2627
      Laura Yanoviak
      Participant

      OK — thank you — I understand now. It’s not clear to me how the 1024 flag works, but I will look into it and let you know if I have any questions.

      This does affect quite a few of our custom Objects.

      MacBook Pro 2.7 GHz Intel Core i7, 16 GB of RAM
      AC17 US (5019) AC18 US (5100) AC19 US (3003) AC20 US (3012) on Mac OS X 10.10.3

Viewing 8 reply threads
  • The forum ‘Graphical editing’ is closed to new topics and replies.