<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic PRINT Command... in Libraries &amp; objects</title>
    <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5161#M41797</link>
    <description>&lt;DIV class="actalk-migrated-content"&gt;&lt;T&gt;Is there a good place to write the PRINT command to make it works with a string?&lt;BR /&gt;
&lt;BR /&gt;
PRINT "Error, check the value"&lt;BR /&gt;
&lt;BR /&gt;
do nothing...&lt;BR /&gt;
The manual writes that it should appear a dialog with my "string"....&lt;BR /&gt;
&lt;BR /&gt;
Thank you in advance.&lt;BR /&gt;
&lt;BR /&gt;
Regards&lt;BR /&gt;
&lt;BR /&gt;
PWD&lt;/T&gt;&lt;/DIV&gt;</description>
    <pubDate>Mon, 29 Dec 2003 18:43:37 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2003-12-29T18:43:37Z</dc:date>
    <item>
      <title>PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5161#M41797</link>
      <description>&lt;DIV class="actalk-migrated-content"&gt;&lt;T&gt;Is there a good place to write the PRINT command to make it works with a string?&lt;BR /&gt;
&lt;BR /&gt;
PRINT "Error, check the value"&lt;BR /&gt;
&lt;BR /&gt;
do nothing...&lt;BR /&gt;
The manual writes that it should appear a dialog with my "string"....&lt;BR /&gt;
&lt;BR /&gt;
Thank you in advance.&lt;BR /&gt;
&lt;BR /&gt;
Regards&lt;BR /&gt;
&lt;BR /&gt;
PWD&lt;/T&gt;&lt;/DIV&gt;</description>
      <pubDate>Mon, 29 Dec 2003 18:43:37 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5161#M41797</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-12-29T18:43:37Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5162#M41798</link>
      <description>The PRINT command should work from any of your primary scripts (2D, 3D, Master). If you just have the command placed in the "root" of the code (no "if/then" statements) then the dialog will appear as you access the object during placement or editing in AC.</description>
      <pubDate>Mon, 29 Dec 2003 23:09:39 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5162#M41798</guid>
      <dc:creator>David Larrew</dc:creator>
      <dc:date>2003-12-29T23:09:39Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5163#M41799</link>
      <description>I placed the PRINT command in the "root" as you advise me to do, but it does not work...&lt;BR /&gt;
AC8 recognizes it as an error not as code (that is ok) but at execution time...It give me the message: "Danger, you encountered problem during the last operation".&lt;BR /&gt;
After that all is ok.&lt;BR /&gt;
&lt;BR /&gt;
It's strange. &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_sad.gif" style="display : inline;" /&gt; &lt;BR /&gt;
&lt;BR /&gt;
Thank you&lt;BR /&gt;
PWD</description>
      <pubDate>Tue, 30 Dec 2003 08:25:36 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5163#M41799</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-12-30T08:25:36Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5164#M41800</link>
      <description>You should not use the Print command except for debugging your script. Its annoying for the user, and will not work if they have that option unticked in their preferences.&lt;BR /&gt;
 if the user enters bad parameters, you can use the 2D symbol to flash up "Bad parameter!"&lt;BR /&gt;
  Best method of all is to use the Master script to correct the error to the nearest valid value, eg all values less than one can be equal to one, and then use the PARAMETERS command to push the correct value to the visible parameters table.&lt;BR /&gt;
  e.g.&lt;BR /&gt;
  IF len&amp;lt;=1.0 THEN len=1.0&lt;BR /&gt;
 PARAMETERS len=len&lt;BR /&gt;
&lt;BR /&gt;

&lt;BLOCKQUOTE&gt;PWD wrote:&lt;BR /&gt;I placed the PRINT command in the "root" as you advise me to do, but it does not work...&lt;BR /&gt;
AC8 recognizes it as an error not as code (that is ok) but at execution time...It give me the message: "Danger, you encountered problem during the last operation".&lt;BR /&gt;
After that all is ok.&lt;BR /&gt;
&lt;BR /&gt;
It's strange. &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_sad.gif" style="display : inline;" /&gt; &lt;BR /&gt;
&lt;BR /&gt;
Thank you&lt;BR /&gt;
PWD&lt;/BLOCKQUOTE&gt;</description>
      <pubDate>Tue, 30 Dec 2003 10:42:33 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5164#M41800</guid>
      <dc:creator>david nicholson-cole</dc:creator>
      <dc:date>2003-12-30T10:42:33Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5165#M41801</link>
      <description>&lt;BLOCKQUOTE&gt;You should not use the Print command except for debugging your script&lt;/BLOCKQUOTE&gt;

OK David,&lt;BR /&gt;
&lt;BR /&gt;
but PRINT does not work in debugging mode, too.&lt;BR /&gt;
I can't use it neither for my uses...&lt;BR /&gt;
I agree that It's annoying for the user... &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_confused.gif" style="display : inline;" /&gt; &lt;BR /&gt;
&lt;BR /&gt;
Thank you&lt;BR /&gt;
PWD</description>
      <pubDate>Tue, 30 Dec 2003 11:13:45 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5165#M41801</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-12-30T11:13:45Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5166#M41802</link>
      <description>&lt;BLOCKQUOTE&gt;PWD wrote:&lt;BR /&gt;&lt;BLOCKQUOTE&gt;You should not use the Print command except for debugging your script&lt;/BLOCKQUOTE&gt;

OK David,&lt;BR /&gt;
&lt;BR /&gt;
but PRINT does not work in debugging mode, too.&lt;BR /&gt;
I can't use it neither for my uses...&lt;BR /&gt;
I agree that It's annoying for the user... &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_confused.gif" style="display : inline;" /&gt; &lt;/BLOCKQUOTE&gt;

If you posted the offending part of the script here, it would be easier to help? &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_smile.gif" style="display : inline;" /&gt;</description>
      <pubDate>Tue, 30 Dec 2003 11:17:17 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5166#M41802</guid>
      <dc:creator>Djordje</dc:creator>
      <dc:date>2003-12-30T11:17:17Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5167#M41803</link>
      <description>&lt;BLOCKQUOTE&gt;PWD wrote:&lt;BR /&gt;&lt;BLOCKQUOTE&gt;You should not use the Print command except for debugging your script&lt;/BLOCKQUOTE&gt;

but PRINT does not work in debugging mode, too.&lt;BR /&gt;
I can't use it neither for my uses...&lt;BR /&gt;
I agree that It's annoying for the user... &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_confused.gif" style="display : inline;" /&gt; 
&lt;/BLOCKQUOTE&gt;

I normally make it a policy not to reply to people who use anonymous handles, but will do because you are from Parma, and your football team and town are in trouble, and you need  help from anyone who can provide it.&lt;BR /&gt;
    PRINT is Extremely useful for debugging, eg, if a script persistently refuses to work, you can PRINT the parameters that you are getting from your calculation only to discover that the angles were allways coming out as infinity or zero or whatever. then you repair the calculation.&lt;BR /&gt;
   If its not working for you either, when debugging, then you have to check your Options&amp;gt;preferences&amp;gt;Imaging settings to check the box to allow you to see error messages. It illustrates what i meant when i said Print is weak for informing the user.&lt;BR /&gt;
  I havent used PRINT for notifying the user since about the 2nd week after learning GDL, realising how unreliable it could be. Master Script, master Script, master Script...... thats where you can solve errors.&lt;BR /&gt;
  &lt;BR /&gt;
 (retires now, with flak helmet, to await reprimand from Djordje.)</description>
      <pubDate>Tue, 30 Dec 2003 12:24:10 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5167#M41803</guid>
      <dc:creator>david nicholson-cole</dc:creator>
      <dc:date>2003-12-30T12:24:10Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5168#M41804</link>
      <description>&lt;BLOCKQUOTE&gt;but will do because you are from Parma, and your football team and town are in trouble, and you need help from anyone who can provide it. 
&lt;/BLOCKQUOTE&gt;

Not only my football team, but PARMALAT also... &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_cry.gif" style="display : inline;" /&gt; &lt;BR /&gt;
I use this handle now cause I used this since 7years an so this is my name for all... for my friend also.&lt;BR /&gt;
In any case you know my real name...: I'm from Parma and I received your cookbook about 1month ago, I paid using a bank tranfer &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_exclaim.gif" style="display : inline;" /&gt;  &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_question.gif" style="display : inline;" /&gt; Do you remember?&lt;BR /&gt;
&lt;BR /&gt;
Bye...&lt;BR /&gt;
PWD</description>
      <pubDate>Tue, 30 Dec 2003 14:27:32 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5168#M41804</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-12-30T14:27:32Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5169#M41805</link>
      <description>Thats what I meant - I assumed that Parmalat is the largest local employer. As your initials are MF, and your company initials are PCS, and your avatar is a Japanese kamikaze, how could you tell me that I should know who you are? is there only one ArchiCAD user in Parma? thats worrying!&lt;BR /&gt;
 I have forgotten your original question.... oh yes, about printing.&lt;BR /&gt;

&lt;BLOCKQUOTE&gt;PWD wrote:&lt;BR /&gt;&lt;BLOCKQUOTE&gt;but will do because you are from Parma, and your football team and town are in trouble, and you need help from anyone who can provide it. 
&lt;/BLOCKQUOTE&gt;

Not only my football team, but PARMALAT also... &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_cry.gif" style="display : inline;" /&gt; &lt;BR /&gt;
I use this handle now cause I used this since 7years an so this is my name for all... for my friend also.&lt;BR /&gt;
In any case you know my real name...: I'm from Parma and I received your cookbook about 1month ago, I paid using a bank tranfer &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_exclaim.gif" style="display : inline;" /&gt;  &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_question.gif" style="display : inline;" /&gt; Do you remember?
&lt;/BLOCKQUOTE&gt;</description>
      <pubDate>Tue, 30 Dec 2003 15:53:35 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5169#M41805</guid>
      <dc:creator>david nicholson-cole</dc:creator>
      <dc:date>2003-12-30T15:53:35Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5170#M41806</link>
      <description>From now I will include my signature... so DAVID you will be sure about my name... only for you. &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_biggrin.gif" style="display : inline;" /&gt; &lt;BR /&gt;
&lt;BR /&gt;
My original question...about printing a message or a variable using PRINT.&lt;BR /&gt;
&lt;BR /&gt;
Now I' trying to put it into the MASTER_GDL.&lt;BR /&gt;
&lt;BR /&gt;
Bye&lt;BR /&gt;
&lt;BR /&gt;
Marco</description>
      <pubDate>Tue, 30 Dec 2003 16:03:48 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5170#M41806</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-12-30T16:03:48Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5171#M41807</link>
      <description>IMHO the only time to use print is for validation when scripting. For example:&lt;BR /&gt;
&lt;BR /&gt;
!------&amp;gt; Master Script &amp;lt;-----!&lt;BR /&gt;
lenSTR = STR("%.16ffi", A)&lt;BR /&gt;
&lt;BR /&gt;
!------&amp;gt; 2D Script &amp;lt;-----!&lt;BR /&gt;
PRINT lenSTR&lt;BR /&gt;
&lt;BR /&gt;
When you click on the "2D Full View button", the print command will show the string, in this case the value of A in feet inches and 1/16th's.&lt;BR /&gt;
&lt;BR /&gt;
And yes, users get pretty annoyed if you forget to remove your print commands.</description>
      <pubDate>Tue, 30 Dec 2003 16:12:02 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5171#M41807</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-12-30T16:12:02Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5172#M41808</link>
      <description>&lt;BLOCKQUOTE&gt;!------&amp;gt; Master Script &amp;lt;-----! &lt;BR /&gt;
lenSTR = STR("%.16ffi", A) &lt;BR /&gt;
&lt;BR /&gt;
!------&amp;gt; 2D Script &amp;lt;-----! &lt;BR /&gt;
PRINT lenSTR &lt;BR /&gt;

&lt;/BLOCKQUOTE&gt;

And if I do not use the Master Script?&lt;BR /&gt;
&lt;BR /&gt;
For Example:&lt;BR /&gt;
&lt;BR /&gt;
!-----&amp;gt;2D Script&amp;lt;-------!&lt;BR /&gt;
&lt;BR /&gt;
nscrew=10&lt;BR /&gt;
&lt;BR /&gt;
PRINT nscrew&lt;BR /&gt;
&lt;BR /&gt;
[END]&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
Does it works for you? Not for me.&lt;BR /&gt;
&lt;BR /&gt;
Thanks</description>
      <pubDate>Tue, 30 Dec 2003 16:37:47 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5172#M41808</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-12-30T16:37:47Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5173#M41809</link>
      <description>&lt;BLOCKQUOTE&gt;PWD wrote:&lt;BR /&gt;And if I do not use the Master Script?Does it works for you? Not for me.&lt;BR /&gt;
Thanks&lt;/BLOCKQUOTE&gt;

You dont need to use the print command for a finished object, and as Sean said, its still incredibly useful for validating things. but you need to use it in the 2D or 3D scripts for you to see the result, thats true. if you calculate the number of screws you need (and heaven knows, we could all do with more than we get!) then do the calculation in the master script, but place the print command in either 2d or 3D.&lt;BR /&gt;
 develop some good error catching routines, and also make more use of the parameters command to repair the user's errors.</description>
      <pubDate>Wed, 31 Dec 2003 12:39:40 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5173#M41809</guid>
      <dc:creator>david nicholson-cole</dc:creator>
      <dc:date>2003-12-31T12:39:40Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5174#M41810</link>
      <description>Like David I haven't used the PRINT statement in years. For debugging I use TEXT2 statements to print values in the 2D full view. This is particularly useful for parts that respond to values that are not testable in the libray part editor (such as SYMB_ROTANGLE or GLOB_CONTEXT). The text in the symbol allows you to place multiple intances in plan and rotate, multiply, stretch, etc. to make sure they work in all situations.&lt;BR /&gt;
&lt;BR /&gt;
(Naturally, I remove or comment the TEXT2 statements once the testing is done.)</description>
      <pubDate>Wed, 31 Dec 2003 14:38:43 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5174#M41810</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-12-31T14:38:43Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5175#M41811</link>
      <description>I've had problems using the PRINT command in some instances and have yet to figure out why so using the TEXT2 command for error checking sounds like a great idea. I dont know why I never thought of it since we use it some of our objects. If you stretch an object beyond a max length, the pen changes to 10 and an error message is printed in plan view.&lt;BR /&gt;
&lt;BR /&gt;
In this instance though you would have to convert the value for nscrew to a text string.&lt;BR /&gt;
&lt;BR /&gt;
nscrew = 10&lt;BR /&gt;
TEXT2 x ,y, STR (nscrew, 8, 0)</description>
      <pubDate>Wed, 31 Dec 2003 17:13:22 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5175#M41811</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-12-31T17:13:22Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5176#M41812</link>
      <description>&lt;BLOCKQUOTE&gt;Sean wrote:&lt;BR /&gt;If you stretch an object beyond a max length, the pen changes to 10 and an error message is printed in plan view.&lt;/BLOCKQUOTE&gt;

You should try David's advice and limit the upper value of the parameter. Such as:&lt;BR /&gt;
&lt;BR /&gt;
IF length_n &amp;gt; 10 THEN &lt;BR /&gt;
   length_n = 10&lt;BR /&gt;
   PARAMETERS length_ n = length_n&lt;BR /&gt;
ENDIF&lt;BR /&gt;
&lt;BR /&gt;
This will prevent the symbol from exceeding the maximum length and reset the value displayed in the dialog.&lt;BR /&gt;
&lt;BR /&gt;
It is always better to do error checking and correction automatically than bugging the user with error massages. I am especially annoyed by library parts that simply display the words "INVALID PARAMETERS"leaving the user to try to figure out why something isn't working with useful information to go on. The coding is typically easier (since you are preventing non-working values) and the finished parts are much more user friendly.</description>
      <pubDate>Wed, 31 Dec 2003 19:53:43 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5176#M41812</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-12-31T19:53:43Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5177#M41813</link>
      <description>I dont do it that way because forcing a value via the PARAMETERS command removes the stretchy properties. The user has to manually change the value to something less than the max to get the stretchy feature back.&lt;BR /&gt;
&lt;BR /&gt;
It's an inconvenience either way.</description>
      <pubDate>Wed, 31 Dec 2003 20:04:19 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5177#M41813</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2003-12-31T20:04:19Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5178#M41814</link>
      <description>&lt;BLOCKQUOTE&gt;Sean wrote:&lt;BR /&gt;I dont do it that way because forcing a value via the PARAMETERS command removes the stretchy properties. The user has to manually change the value to something less than the max to get the stretchy feature back.&lt;BR /&gt;
&lt;BR /&gt;
It's an inconvenience either way.&lt;/BLOCKQUOTE&gt;

The stretchiness is easily retained. I am not sure what you are doing to defeat it. You might like to try one of the following:&lt;BR /&gt;
&lt;BR /&gt;
1. This is similar to my previous post except that I am just using the default "A" (horizontal size) parameter. This approach has the drawback that the part appears to stretch beyond the limit and then snaps to the new point stretched to and moves the origin point over to conform to the maximum value (I suppose this might even be useful in certain circumstances).&lt;BR /&gt;
&lt;BR /&gt;
In the Master script:&lt;BR /&gt;
&lt;BR /&gt;
IF A &amp;gt; 10 THEN PARAMETERS A = 10&lt;BR /&gt;
&lt;BR /&gt;
In the 2D script:&lt;BR /&gt;
&lt;BR /&gt;
RECT2 0, 0, A, B&lt;BR /&gt;
&lt;BR /&gt;
2. This method seems to have no drawbacks and works smoothly and precisely as one would expect. The part simply will not stretch beyond the maximum.&lt;BR /&gt;
&lt;BR /&gt;
In the Master script:&lt;BR /&gt;
&lt;BR /&gt;
VALUES `a`  RANGE [0, 10]&lt;BR /&gt;
&lt;BR /&gt;
In the 2D script: (same as above)&lt;BR /&gt;
&lt;BR /&gt;
RECT2 0, 0, A, B&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
In both cases the stretchiness is retained but the second method is clearly superior in most situations. The RANGE function also works to set a lower limit (0 as shown above). Modified as shown below, the code limits the user to stretch horizontally between 9 and 10 meters.&lt;BR /&gt;
&lt;BR /&gt;
VALUES `A` 9, RANGE [9, 10]&lt;BR /&gt;
&lt;BR /&gt;
Adding the STEP function (below) allows you to limit the user to specific increments within the RANGE. This snaps to the allowed values as the user stretches the library part.&lt;BR /&gt;
&lt;BR /&gt;
VALUES `A` RANGE [5, 10] STEP 5, 0.5&lt;BR /&gt;
&lt;BR /&gt;
As far as I can tell there is no limit to defining multiple ranges and step values for a given parameter. The added RANGE statement below allows values between 5 and 10 meters and between 15 and 20 meters. In use the symbol snaps smoothly to all allowed values.&lt;BR /&gt;
&lt;BR /&gt;
VALUES `A` RANGE [5, 10] STEP 5, 0.5, RANGE [15, 20] STEP 15, 0.33&lt;BR /&gt;
&lt;BR /&gt;
All in all, this is very cool stuf which I have onkly just barely begun to exploit. GDL keeps getting more powerful and easier all the time. (Except that there is so much more to do now to take advantage of all the cool new capabilities &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_smile.gif" style="display : inline;" /&gt; )</description>
      <pubDate>Fri, 02 Jan 2004 17:38:59 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5178#M41814</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2004-01-02T17:38:59Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5179#M41815</link>
      <description>&lt;BLOCKQUOTE&gt;Matthew wrote:&lt;BR /&gt;You should try David's advice and limit the upper value of the parameter. Such as:&lt;BR /&gt;
&lt;BR /&gt;
IF length_n &amp;gt; 10 THEN &lt;BR /&gt;
   length_n = 10&lt;BR /&gt;
   PARAMETERS length_ n = length_n&lt;BR /&gt;
ENDIF&lt;BR /&gt;
&lt;BR /&gt;
This will prevent the symbol from exceeding the maximum length and reset the value displayed in the dialog.
&lt;/BLOCKQUOTE&gt;

I agree with you completely, matthew, and am not sure why Seans objects dont stretch, all my objects stretch, but I use the methods on Mathews later message to limit them, eg RANGE in the VALUES list.&lt;BR /&gt;
&lt;BR /&gt;
On thing that is a must though, if Matthew will allow me to correct him in public is that the "greater than or equals" is more reliable, otherwise for some reason, some things might stick at one length and not stretch, ie you should write:&lt;BR /&gt;
 IF length_n &amp;gt;= 10 THEN &lt;BR /&gt;
   length_n = 10&lt;BR /&gt;
   PARAMETERS length_ n = length_n&lt;BR /&gt;
ENDIF&lt;BR /&gt;
&lt;BR /&gt;
some people say that you can shorten this to 1 line:&lt;BR /&gt;
&lt;BR /&gt;
 IF length_n &amp;gt;= 10 THEN PARAMETERS length_ n = length_n&lt;BR /&gt;
&lt;BR /&gt;
But I find this unreliable too, and the method aforementioned is the more reliable solution (and is DNC+GS recommended), and only requires a tiny amount extra typing.</description>
      <pubDate>Fri, 02 Jan 2004 21:12:04 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5179#M41815</guid>
      <dc:creator>david nicholson-cole</dc:creator>
      <dc:date>2004-01-02T21:12:04Z</dc:date>
    </item>
    <item>
      <title>Re: PRINT Command...</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5180#M41816</link>
      <description>&lt;BLOCKQUOTE&gt;david wrote:&lt;BR /&gt;On thing that is a must though, if Matthew will allow me to correct him in public is that the "greater than or equals" is more reliable, otherwise for some reason, some things might stick at one length and not stretch..&lt;/BLOCKQUOTE&gt;

David,&lt;BR /&gt;
&lt;BR /&gt;
You caught me being sloppy in my example. I always use the "greater than or equal to" (&amp;gt;=) in my actual coding. When I need "greater than" or "less than" I use something like:&lt;BR /&gt;
&lt;BR /&gt;
IF x  &amp;gt;= 0.0001 THEN...&lt;BR /&gt;
&lt;BR /&gt;
I am glad you spotted this. I would hate to inadvertantly lead people into flaky coding.</description>
      <pubDate>Fri, 02 Jan 2004 22:35:56 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/PRINT-Command/m-p/5180#M41816</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2004-01-02T22:35:56Z</dc:date>
    </item>
  </channel>
</rss>

