• Posts

  • Joined

  • Last visited

Everything posted by GerryT

  1. I think Mr. Dermont's response is a little misleading. And, at the very least, I believe we can agree to disagree. When a symbol is brought into a plan, only the GUID ( or some form of it) is stored in plan within the Ruby class within the Ruby namespace. The attributes are not stored in the Ruby Namespace but are just class function calls to the plan data. This keeps the data private and read only. Therefore, it does not matter whether the sink is in open plan or within a cabinet. The memory is the same. You can test this by setting the sink's owner to a global, than equating that to a custom attribute of the cabinet, which then gives you access to all of the sink's attributes in any cabinet schedule for that cabinet. The problem is that if you then delete the sink before deleting all of the macro references, the program will throw a uncaught memory error and you will lose all your work. You are essentially trying to address deleted memory. Chief has been aware of this for years and has been very clear that they will never fix this problem for whatever reason? My point is, i see no technical reason not to allow access to the child data of a parent ( they do this already with rooms) and I find Mr. Dermont's explanation to be a little insulting? But I do agree that Chief has the perfect right to structure its software as it sees fit.
  2. It certainly is a part of Arial, etc.. which,if you do a web search of Arial code points, you'll see it listed. It does not show up in character maps because it is a non-printable control character. (Control set #1). Character maps usually only show printable characters.BTW: just because Ruby supports control set #2 doesn't mean Windows does.By definition control set #2 is optional depending on the software.
  3. Just checked -- Text boxes use the font selected. If the macro uses a code point out side of the font set, it returns a blank as expected. Labels use the chief blueprint font which about the same as Arial. It would nice if we could get the definitive answer from Chief instead of guessing? There is noway, AFAIK, for macros to select a font set or size, they only pass through code points.or encoded text. Still hoping that the MM will let us select font size? EDIT: It appears that the MM only uses Arial but will pass through the correct code point. This will be a problem if one is copy/paste from another font ifrom another language -- Should be fixed. as what font one is coding as it may look different then what is MM
  4. IOW: upgrade to X12 and it should work OK. However, there is still a problem. Not all Fonts (Most Not) support all code points.It appears that If the font you are using does not support the UTF-8 code point that Chief will default to its Chief Blueprint font which is close to Arial in code point support. If should, in that case return either a space or question marl, but instead, it does default to another font which can be confusing.. At any rate, in X12, you can cut/paste or use the alt keys or use Ruby -- all should work fine except for the missing code point thing which might get you a font character appearance that you do not want. I talked to TS and he guessed that Chief Blueprint was defaulted to, but wasn't sure and said he could not tell me if he knew. Perhaps Dermot has the authority to tell us how X12 functions?? Bottom line: its not going to work in X9 but should work OK in X12 -- Great improvement and worth the upgrade. It appears to work there uniformly across all fields and macros..Note: that if you are using a foreign language you are better off using that language keyboard, otherwise you will have to input upper level code points individually which is impractical.
  5. FYI: Single line conversion is: x = "5 3/4" x = { |r| Rational(r) }.inject(:+).to_f => 5.75
  6. U+2220 - U+2222 in Cambra Math
  7. Most likely it was copied from a previous upgrade. Change the path in preferences/general/ruby from x8 to x10
  8. From reading your posts, I haven't the slightest idea of what your trying to accomplish. Trying to understand why you don't just put the file in your scripts directory and let Chief handle the path automatically for the MAC or PC. ($LOAD_PATH[0] +"test_1.txt") Eliminates need for any path. Note that macs do not use letter drives
  9. Was Removed because of a general lack of user interest and Chief's support for macros. I am no longer recommending macros in Chief but you may want to contact Michael or Joe who have simpler solutions. Here's new link if your still interested. Keynotes
  10. best option is to just create a framing schedule -- gives everything you want If you want to differentiate studs in a material list. you have to create a difference between stud objects and material skin is not recognized by the material list as a parameter. so you have to use the ruby objects. such as line type or some other unimportant parameter. Select all your new studs and change something into something. Add a object macro into the material list in one of the unused fields Referencing the changed parameter.. Right click and select "divide into multiple values" Michel can help with that.
  11. Not in practicality ? This is only possible in X10 but if you close the plan and reopen the sequence will re-number in a different order. So -- more trouble than its worth.
  12. Eastern time zone-- sent you a PM.
  13. There is no attribute for wall height in Chief as of now. You can check the available attributes for any object by selecting the object and using the macro 'ObjectProperties'. ( or load a custom list macro - easier. Generally wall heights are determined by using the room attribute finished_floor_elevation and ceiling_elevation etc. There is no default method to load or save Globals with the plan in Chief -- as of now. There are several workarounds -- depending on your preference & effort. The easiest to just put your Globals in a Script to be automatically loaded on the start of Chief. However, if you change a Global than you have to manually change the script. You can also load and save a text file. You can also load and save Globals in a hash using Marshall - Which is beyond the scope of a few paragraphs here -- several other options based on your level of desired effort. Happy to do a "goto meeting" with you to explain/explore options if you want to explore further & think it's worth while? Otherwise just put them in a macro to be executed within a object or the MM or the OIP of a object.
  14. You can use either if you use owner.area, you do not need to set Context and can leave it at none. As always, the object must be selected or the macro must be in a label.( assuming reference is not used)
  15. You can't use 'puts' in a CA macro as it writes a string to the console and there is no console to write to. CA transfers the output of a macro to their display internally. Use 'p' instead. It returns 'inspects' instead of string. Also macros only return the last known value so using multiple 'p' or puts will not give a multiple line output. Your last string is the correct method of chaining strings for output although Using expression substitution , #{} is a cleaner method. You might consider using a polyline with label (avoids using reference) as a more reliable method. to stop it's output to the label -- just end with a nil
  16. This topic is sooo common that i assumed you did a search beforehand. Both Joe and mike sell macros to do this and have been doing so for years. This is extremely simply to do and if your interested in doing it yourself and want to invest in some "gotomeeting" time -- just PM me -- most would rather go the easier route.
  17. Absolutely -- not more than 10 minutes work!! Just call Joe or Mike.
  18. Revit, Rhino, Vectorworks and Allplan all have Python support. Form-Zis working on Python. Sketchup does ruby. Although i do think that Python may integrate better, I still think Ruby is a easier language to learn for the novice. And ruby 3 will have some advanced features. Wonder where Chief is and what is their position is now? -- With a few improvements and a keyboard interface using Chief's hotkeys, I think Chief's Ruby API could quickly rival the above in versatility? Are Chiefer's going to be left behind? What do you think? Open up Data Access in CA.
  19. Sent you the files via direct e-mail Good Luck?
  20. Just looked at your response and have to say that I did not realize that you could have a condition with or without a > sign (optional??)on the end? in that case, the proper code would be: x = owner.supplier.gsub(/(>[0-9]*>?)|\n/,'') --(note the ? mark) -- only if the optional > is always on the end. If the optional > might also be in the front - a different macro is needed if that number is not to be removed? Your solution looks OK though, you can get too cute in putting everything in one statement. Many times it's easier to understand with multiple statements in lieu of one.
  21. Try this x = owner.supplier.gsub(/(>[0-9]*>)|\s/,'') OR x = owner.supplier.gsub(/(>[0-9]*>)|\n/,'')
  22. Attached for comments is a video which demos a method of organizing and adding construction notes in Chief using macros. Has some short comings but could be easily resolved if macros capabilities are updated - notably adding rich text capability and Unicode pass through. Construction Notes
  23. Here's a Demo video as to how I previously handled keynotes in chief using just macros. I decided to show for comments. if you like a particular feature or not you might want to submit a comment to chief now so that it gets considered when they implement keynotes in 'who knows' future revision. Keynotes in Chief architect
  24. Thanks for the effort -- Unfortunately it does not apply, in particular, to the message- only the same topic. As to the Material list macros - found them to be completely worthless for a mired of reasons. Still can't understand how it ever got through beta? Thanks Again
  25. Any idea what its usage may be for? Strange message because you can not insert parenthesizes now in a macro title? Is this something to come in X11? I'm thinking not since they now create/copy macros to singleton methods under the new Macros class. A () on the end would imply parameters. Maybe their just eliminating any confusion? So much for he ability to pass parameters between macros?