Ruby Extensions (Macros) in Chief Architect


Medeek
 Share

Recommended Posts

Lately I've been giving some serious thought about porting some of my extensions (Medeek Extensions for SketchUp) to CA.  However, I'm not finding a lot of documentation on creating Ruby programs that run inside of CA.  I have a number of questions:

 

1.) Can one create full fledged extensions in CA like one can do within SketchUp?  For example I have tools within my SketchUp extensions that can generate various building elements, like columns, trusses, and staircases.

 

2.) Does CA have full access to the Ruby engine like SU does?

 

3.) Are there any developers like myself creating extensions within CA?

Link to comment
Share on other sites

Okay, that answers a lot of questions for me and helps me understand why I was not finding any real documentation on any sort of API within Chief.  

I'm going to assume that you are also unable to create any standalone objects or entities within Chief using Ruby.

Link to comment
Share on other sites

5 minutes ago, Medeek said:

I'm going to assume that you are also unable to create any standalone objects or entities within Chief using Ruby.


Only annotation objects (i.e. labels).  We can use macros in a handful of creative ways to mimic the creation of those annotation objects, but we are really just replacing strings in those objects with other strings and not actually creating the objects or modifying any of their settings.

Link to comment
Share on other sites

3 hours ago, Medeek said:

1.) Can one create full fledged extensions in CA like one can do within SketchUp?  For example I have tools within my SketchUp extensions that can generate various building elements, like columns, trusses, and staircases.

Though I am sure at times this is a faster process in Sketchup using your scripts, but some of the tools available in Chief far surpass the abilities of sketchup for dynamic and parametric modeling, all is not lost is what I am trying to say. :)

 

Link to comment
Share on other sites

I guess there really is no way to program Chief like there is with SketchUp.  I originally come from the AutoCad world so before I ever ventured into Ruby and SketchUp I was already using AutoLisp to create my own routines for specific tasks and some geometry creation.  I am a little surprised that Chief does not open itself up to 3rd party development, I think it would be a huge boon for not only Chief itself but for the entire user base and the Chief ecosystem.

Link to comment
Share on other sites

31 minutes ago, Medeek said:

I guess there really is no way to program Chief like there is with SketchUp.  I originally come from the AutoCad world so before I ever ventured into Ruby and SketchUp I was already using AutoLisp to create my own routines for specific tasks and some geometry creation.  I am a little surprised that Chief does not open itself up to 3rd party development, I think it would be a huge boon for not only Chief itself but for the entire user base and the Chief ecosystem.

There are a bunch of reasons why it wouldn't be very feasible for chief to offer such a thing, but also I don't immediately see the need for such a thing. It was nice to see how efficiently your hardware was built, but in the end, a decorative gable end truss is only going to be useful to a small segment of the user base and for those users, they would probably already have hardware grouped together based on pitch in an architectural block that is a single click to drop and then a few more clicks to place. Meanwhile the truss profile is dynamic and linked to the roof as stated before. I imagine your truss shape is limited to what you have programmed? In chief we can get full dropped partial attic trusses in a few seconds etc. 
Wall framing is also auto generated as well as all framing. 
This screenshot took less than 2 minutes to build from scratch:
image.thumb.png.639d40e9e34c9c76931c68112f99c831.png

The main problem I would have with an outside truss building software is that we introducing liability whereas the built in truss building tools limit liability because their creation is tied into the parameters of the building we eliminate a lot of potential for user based error 

 

  • Like 1
Link to comment
Share on other sites

I totally get having any truss linked to the roof so when you adjust the pitch the truss will adjust with it.  However, how would you go about creating a fairly complicated timber truss within Chief that automatically is linked and shows bolts, plates or other such hardware or accoutrements?  Is such a thing possible?

truss_su869_800.thumb.jpg.c060c8e6e0a6ec04916af4476f5b8d50.jpg

If it is not easy to create such a truss within Chief then there is probably some utility for my Truss extension for certain Chief users who are designing high end homes.  Essentially one would use the Truss plugin within SketchUp to customize or fine tune your timber truss and then import directly into Chief.  If the roof pitch changes due to customer design requests (as often happens) rather than laboriously update the existing geometry within Chief, one would hop back into SketchUp, take the existing truss, copy it, and then edit it with the extension, no manual editing required.  Once the desired look is again achieved, one would bring it back into Chief replacing the previous truss.

 

P.S.

The only reason to copy the existing truss in SketchUp is to create a record of the original design in case one would ever want to revert back to the original truss, such things do happen.  I've done some projects where there have been upwards of 4 or 5 iterations on seemingly insignificant elements in a design, but as we all know the customer is king.

Link to comment
Share on other sites

33 minutes ago, Medeek said:

Once the desired look is again achieved, one would bring it back into Chief replacing the previous truss.

I edited and added to my last post after you posted this I think..and it's important to note:
 

 

50 minutes ago, Renerabbitt said:

The main problem I would have with an outside truss building software is that we introducing liability whereas the built in truss building tools limit liability because their creation is tied into the parameters of the building we eliminate a lot of potential for user based error 


So if I were to use your software for that particular plugin that you have, I would use it just for the hardware. I imagine there are some people that use sketchup at times and maybe there is a market for them, but just as a practice I made my own brackets in about 5 minutes and now I have them and can use them over and over again. I would block all my 4 in 12 pitch brackets together and then my 6 in 12 etc. I would store them in a block in an orientation that is typical of my truss envelops and then its just drag and drop. I honestly am not trying to discourage you, and I think this is an extremely valuable thing you have created for sketchup users. There are a few people here that are maybe beginner intermediate in Chief and I think may really like your setup where maybe its easier for them to have you build their truss for them. For the intermediate advanced, the Solid modeling tools are super fast and easy to build such shapes with unions and make parallel tool and chamfer tools as well as the polygon tool

 image.thumb.png.3a19a25306ff4d926dd5814d0fe3f697.png

  • Like 1
Link to comment
Share on other sites

1 hour ago, Renerabbitt said:

I don't immediately see the need for such a thing.

After perusing the forum for a bit I was actually quite surprised at how much mention was made of the 3D Warehouse hosted by SketchUp.  It appears that there is a significant need for CA users to import various 3D models that were originally drawn in SketchUp, everything from cars, to furniture even appliances.  CA strikes me as a very architectural centric system, which is good but it also is not well suited for general modeling like SketchUp is.

The point of my extensions and the geometry they create is to take advantage of the Ruby backend and turn some of that geometry into parametric entities.  The biggest frustration for SketchUp users is not the modeling environment in my experience but the lack of parametrics, everything is essentially "dumb" geometry.  For some things this is perfectly acceptable and to be expected but for other architectural elements that are geometrically relational this becomes very tedious and inexact, especially when things change the design/dimensions.  Having the extensions in SketchUp resolves these issues, while maintaining the joyous 3D modeling experience.

 

P.S. 

Your truss looks good, however what do you if the client then wants a 7:12 pitch or an 8:12 and so on and so forth.  With a ruby program all of this is simply one click and you have a new truss that meets your needs, rather than having to create a massive library of every possible pitch and permutation.  What if the engineer calls for more bolts, the bottom line is there are too many possible solutions to the problem that is why a programmatic solution is simply the best.

P.P.S.
As you suggest creating that truss within CA would probably be a tall task for your average CA user, in fact I would venture a guess that most would not even attempt it.  Drawing that manually is even tedious within SketchUp (but probably easier than in Chief), that is why having a dedicated extension or tool to easily create such complex elements is the way to go in my honest opinion.  Say for example you need to adjust your bolt sizes or spacing?  I can do any of that with the click of a button, to do this manually is a real pain. 

Just imagine if Chief had an API and one could create extensions or widgets for Chief that could do this sort of thing like I have done in SU, the world would be a much better place.

Link to comment
Share on other sites

1 minute ago, Medeek said:

3D Warehouse hosted by SketchUp

Absolutely, many of us use 3dwarehouse to supplement for furniture and light fixtures
 

 

2 minutes ago, Medeek said:

The biggest frustration for SketchUp users is not the modeling environment in my experience but the lack of parametrics, everything is essentially "dumb" geometry.

Totally Agree

  • Like 1
Link to comment
Share on other sites

16 minutes ago, Medeek said:

P.S. 

Your truss looks good, however what do you if the client then wants a 7:12 pitch or an 8:12 and so on and so forth.  With a ruby program all of this is simply one click and you have a new truss that meets your needs, rather than having to create a massive library of every possible pitch and permutation.  What if the engineer calls for more bolts, the bottom line is there are too many possible solutions to the problem that is why a programmatic solution is simply the best.

This for me is just handled in a detail. I would not need to model such things nor have it be accurate. This is standard practice just to have an annotation. the 100 ft solution would be fine for me. Like I said I think what you have is cool, but I really could draw it quick enough for my taste. I also can't stress enough that I would not want to take on the liability of the truss being wrong, far safer for me to use the built in truss tools..Like you said, the pitch changes and I forget to export build and reimport and now I have a $5000 truss built wrong. No way...I did try to say though, that the hardware creation is what's interesting..that part I would import, just the hardware.
The truss is really easy to build in chief, and its really fast, and its accurate to the model. It's not as fast as your tool, but your tool isnt bound to the roof planes and ceing structure of my model
By the way don't let me be the deterrent, put your stuff up in the offering services section

Link to comment
Share on other sites

I'm not at all proficient with Sketchup yet but I do have and use the Medeek tools occasionally. At this point mostly for creating timber trusses and other trusses that I can import into Chief. I can build timber trusses very quickly with exact specs including hardware that are actually how they would build in real life. Same with attic, scissor & parallel chord trusses when I want to show them in a detailed section and can't get Chief to build them realistically. 

 

I realize it's impossible, but some kind of mashup between Chief's speed in getting the building and basic elements designed along with Sketchup/Medeek's framing & foundation capabilities would damn near be the perfect design software.

  • Like 1
Link to comment
Share on other sites

On 1/31/2025 at 8:06 AM, tundra_dweller said:

I'm not at all proficient with Sketchup yet but I do have and use the Medeek tools occasionally. At this point mostly for creating timber trusses and other trusses that I can import into Chief. I can build timber trusses very quickly with exact specs including hardware that are actually how they would build in real life. Same with attic, scissor & parallel chord trusses when I want to show them in a detailed section and can't get Chief to build them realistically. 

 

I realize it's impossible, but some kind of mashup between Chief's speed in getting the building and basic elements designed along with Sketchup/Medeek's framing & foundation capabilities would damn near be the perfect design software.

Agreed

Link to comment
Share on other sites

How are you guys importing sketchup geometry into Cheif?  Is that a native function or are you going about it using STP files?

 

What is the best method of doing this?  I am torn between leaving cheif to use Sketchup and MDK's plugins to try and best create framing in 3D.  I dont want to buy Revit just to size / draw / model the bones of my Architect's models.  Especially considering that the output is always going to be a simple 2D drawing.  

 

Medeek, I've been following you for many years. All the way back to engtips forum.  Funny to see you over here.

 

 

Link to comment
Share on other sites

3 hours ago, MannyREG said:

How are you guys importing sketchup geometry into Cheif?

It is a native function, can come in as an obj file or skp file extension. It will come in as a single object, so if you were to say frame all of the walls in sketchup, it will come in as one non-explodable object instead of individual components.
 

3 hours ago, MannyREG said:

I am torn between leaving cheif to use Sketchup and MDK's plugins to try and best create framing in 3D

You can, it is possible

 

 

3 hours ago, MannyREG said:

I dont want to buy Revit just to size / draw / model the bones of my Architect's models

You know that framing in Chief architect is a single click? aside from a discrepancy in macro reported cut length of rafters, have you run into an issues ? You are using the Premiere line of the product?
This was one button press:
image.thumb.png.1197a861f84fe969b04b3337ae1a9084.png
Welcome to the Chief forums Manny

Link to comment
Share on other sites

I would be interested in your extension(s) but I would probably use them only for some special items like your timber trusses.  I do some timber frame projects and some log homes.  

 

Have you considered a "Spiral Stair Tool" ?

 

IAE, pleas let me know what the cost is and how to purchase.

Thanks

  • Upvote 1
Link to comment
Share on other sites

1 hour ago, Renerabbitt said:

It is a native function, can come in as an obj file or skp file extension. It will come in as a single object, so if you were to say frame all of the walls in sketchup, it will come in as one non-explodable object instead of individual components.
 

You can, it is possible

 

 

You know that framing in Chief architect is a single click? aside from a discrepancy in macro reported cut length of rafters, have you run into an issues ? You are using the Premiere line of the product?
This was one button press:
image.thumb.png.1197a861f84fe969b04b3337ae1a9084.png
Welcome to the Chief forums Manny

 

Thank you!  I have lurked.

 

Yes, I have been using the framing tools for quite a while and for homes that I deisgn natively in Chief, its hard to beat.  However, what has drawn me to look at other options is the fact that Chief cannot import a Revit file so that I can draw a floor platform for example.  About half of the work I do is then using AutoCAD to draw on top of Revit "backgrounds" which are nothing more than dwg outputs.  I use AutoCAD for that.  It is not worth the time to trace out a house and insert all the windows precisely for a simple floor ceiling and roof framing plans.  I am trying to really "pull out and show" the critical items such as stud packs, post, beams, etc. and show them clearly on a drawing.  

 

The answer may be to stick to AutoCAD and work on tools for that but would rather incorporate some automation to stave off arthritis and going blind staring at spiderwebs on the computer screen.  I was super impressed by plus spec and their method of copying a floor system and appyling it to a new area or polyline.  See the video linked below at approx 5:15 time stamp.  I think it would be a cool workflow to just import an existing revit model, trace out a floor and then insert the frame.  

 

 

 

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share