-
Posts
11782 -
Joined
-
Last visited
Content Type
Profiles
Forums
Gallery
Everything posted by Joe_Carrick
-
Chief x10 very slow, file quadrupled in size
Joe_Carrick replied to heidistokoe's topic in General Q & A
Heidi, FWIW, it wasn't the unused CAD Blocks. It was the Symbol itself. CAD Blocks generally don't take much space but 3D Symbols can because they have so many faces. -
Change your Current CAD Layer.
-
Make sure the base roof plane extends under the areas you want to over-frame. Chief needs to know there's an overlap. Typically if you build the roof planes using the automatic tool there won't be any overlap. All roof planes will join at the valleys.
-
Desperately Seeking Chief Architect user to change a setting.
Joe_Carrick replied to FlynDad's topic in Seeking Services
20' @16" o.c. and you can expect a deflection of about 3/4" at center span. Contrary to what Alan said, the beam over the kitchen (2 LVLs - Framing Plan shows only 1) is probably insufficient and there are no bearing walls along that line to support the rest of the floor joists. Using standard span tables can work when there aren't any extra superimposed loads (just sq.ft. loads) but otherwise structural member sizing needs to be engineered. All roof and wall loads have to be carried all the way down to the foundation. When bearing walls are not vertically aligned the span tables shouldn't (can't) be relied on. I do some freelance work but I'm too busy at this time with other clients. -
Desperately Seeking Chief Architect user to change a setting.
Joe_Carrick replied to FlynDad's topic in Seeking Services
Take a look at the 2nd Floor Floor Joists. You have spans of about 24' and 27'. Neither of this is possible with those TJIs. It's not even close to being possible. -
2x14's should work. OTOH, I would design that with "Square Cut Eaves" vs "Plumb Cut". Cutting the ends of the TJIs would be very difficult.
-
Desperately Seeking Chief Architect user to change a setting.
Joe_Carrick replied to FlynDad's topic in Seeking Services
FWIW, the structural framing plans indicate 11.875" TJIs @ 16" o.c. with spans in excess of 24 feet. That would be like a trampoline. It just won't work. That's just one of many problems with those plans. As mentioned previously, the stairs don't work. In addition, Mechanical and Plumbing may have issues in terms of routing. I would suggest you hire an Architect or Structural Engineer - or both if the Architect doesn't want to do the structural engineering. -
Solid Mask doesn't work for my purposes. I need to have what's behind displayed.
-
I'd settle for just the pline and hole being different. I don't want to upset CA Development Staff too much
-
Maybe not, but I'm pretty sure it was possible at one time. I don't have time to go back 6 or 7 versions to check. So what I did was: created a closed Polyline without a hole or fill - solid linestyle copy that Polyline in place, created a hole, set blank linestyle, added fill. IAE, It really seems like CA should provide this capability with just a single Polyline. This is a very common drafting practice.
-
IOW, Select the original cabinet, then tab, delete.
-
It seems that in the past I've been able to create a hole in a Polyline and make the linestyle a "blank". That way I could hatch the polyline but not have the hole itself visible. I've been trying to do that in X14 and am not able to. Does anyone else know how to get it to work?
-
So in each system just set the additional LOAD+PATH as a separate line in the Ruby dbx. It's that simple.
-
That bug should have been fixed by a later update. Check for updates in your digital locker.
-
Yep, every time there's an update or new version. That's why it's not a good idea.
-
For rb files that you wish to use in multiple versions of Chief you will need to make sure you copy them to the current version's $LOAD_PATH. -or- put them in a common file and edit the $LOAD_PATH in the current version of Chief. I'm pretty sure you can have multiple paths separated by simi-colons
-
Agreed- except that AFAIK, Chief's default Safe Level has always been 2 I do have some macros that create, read and write files. Some of those require a Safe Level of "0".
-
You probably need to set the Ruby Safe Level to 1. CA by default sets it at 2 which doesn't allow some things to work.
-
I think there's a bit more that needs to be done to make it work correctly: Macro: In CA require 'scope1' my_method(length) Output: from text stored on a local drive def my_method(x) rafter_length = (self.to_f.round / 12) + 1 convert_to_int = rafter_length.even? case when convert_to_int == true result = rafter_length when convert_to_int == false result = rafter_length +1 end end Unless I'm wrong, the parmeter length needs to be passed to my_method in order for the method to know what's being analyzed.
-
I just find it easier to have Saved Plan Views with the appropriate defaults and layer sets. That's what I send to Layout. In addition, for Details, Elevations, Sections, etc I find it easier if my drawing sheets sizes for those items are sized to fit uniformly within my layout border. It's much easier to arrange them by snapping to one another. I am aware of your method but I don't like having to go thru each sheet in the Layout to make sure the Defaults, Layerset and any Reference Layersets are properly specified. Saved Plan Views sent to Layout take care of all that. Actually I don't think your method deals with "multiple reference layer sets" on separate Layout pages.
-
Here's a sample rb file that has a series of defined methods. Note that I no longer use this since it's problematical to update with each new version of chief. #================================================= # Joe's Macro Subscription Service # Ruby script: Float Class # Copyright October 1, 2015 by Joseph P. Carrick #================================================= # The contents of this Ruby Macro is not to be # revealed to any other Chief Architect user or # employee. If a violation of this requirement # is found, the offending subscriber's # subscription will be immediately terminated. #================================================= # Place this file in Chief Architect/Data/Scripts # folder. Then place the following: # require "Float Class.rb" # at the beginning of any macro where you want to # use these methods #================================================= class Float #================================================================= # Display a numerical value formatted according the the current # units of the Plan. Requires $Units to be either "Imperial" or # "Metric" to recognize the units. #================================================================= def format_number(n) if $Units.nil? result = self.sig(3) elsif $Units == "Imperial" result = self.ftin(32) elsif $Units == "Metric" result = self.meters(n) else nvalue = self.sig(3) end return result end #================================================================= # Display a value (decimal inches) formatted as a text string # syntax: nvalue.ftin(denominator) # example: n = 64.125 # s = n.ftin(8) -> 5'-4 1/8" #================================================================= def ftin(denominator) if $Units.nil? nvalue = self elsif $Units == "Imperial" nvalue = self elsif $Units == "Metric" nvalue = self/2.54 else nvalue = self end arr = self.divmod(12) if arr[1] >= 11.96875 arr[0] = arr[0]+1 arr[1] = 0.00 end inch_frac = ((arr[1]-arr[1].floor)*denominator).round.quo(denominator) if arr[0].floor < 1 if inch_frac == 1.0 result = "#{arr[1].ceil}"+'"' elsif inch_frac == 0.0 result = "#{arr[1].floor}"+'"' elsif inch_frac < 1 and arr[1].floor > 0 result = "#{arr[1].floor} #{inch_frac}"+'"' elsif inch_frac < 1 result = "#{inch_frac}"+'"' else result = "#{arr[1].floor} #{inch_frac}"+'"' end else if inch_frac == 1.0 result = "#{arr[0]}'-#{arr[1].ceil}"+'"' elsif inch_frac == 0.0 result = "#{arr[0]}'-#{arr[1].floor}"+'"' else result = "#{arr[0].floor}'-#{arr[1].floor} #{inch_frac}"+'"' end end return result end #======================================= # Convert Float to Feet # rounded to nearest foot #======================================= def feet feet = (self/12).round(0).to_s result = feet +"'-0" return result+'"' end #======================================= # Convert Float to Decimal Feet # rounded to 3 decimal places #======================================= def decimal_feet feet = (self/12).round(3).to_s + "'" return feet end #======================================= # Convert Float to Inches-Fractions # Formats are: # 1/16" # 1 1/16" # 1" # nDivisor can be any integer between # 1 and 32. Most common are: # 1,2,4,8,16 & 32 #======================================= def inches(nDivisor) inches = self.floor if inches > 0.00 frac = (self.remainder(inches)*nDivisor).round.quo(nDivisor) else frac = (self * nDivisor).round.quo(nDivisor) end if frac == 1 result = "#{inches + 1}" elsif frac == 0 result = "#{inches}" else result = "#{inches} #{frac}" end return result.gsub(" ","-")+'"' end #================================================================= # Get the SqRt of a number to n significant places #================================================================= def sqrt(n) a = self x = 1.00000 while (x*x) < a x = x+0.00001 end return x.round(n) end #================================================================= # Display a decimal value as a text string to (n) significant places # syntax: nvalue.sig(n) # example: x = 65.375 # s = x.sig(4) -> '65.3750' # example: x = 65.25 # s = x.sig(3) -> '65.250' #================================================================= def sig(n) nPad = self.round().to_s.length + n + 1 result = self.round(n).to_s.ljust(nPad,"0") return result end #================================================================= # Convert millimeters to meters & display to (n) significant places # syntax: nvalue.meters(n) # example: x = 6543 # s = x.meters(3) -> '65.430 m' # example: x = 650 # s = x.meters(3) -> '6.500 m' #================================================================= def meters(n) if $Units.nil? nvalue = self elsif $Units == "Imperial" nvalue = self*2.54 elsif $Units == "Metric" nvalue = self else nvalue = self end if n > 3 n = 3 elsif n < 0 n = 0 end m = nvalue/100 result = m.sig(n).to_s + " m" return result end end
-
You don't read the rb file. You "require" it. Within that file you need to define the function"int_length"and then in your macro you call the function. ie: result = int_length(length)
-
You should just make this an evaluated macro in chief, context: owner rafter_length = (length.to_f.round / 12) + 1 convert_to_int = rafter_length.even? case when convert_to_int == true result = rafter_length when convert_to_int == false result = rafter_length +1 end Using an rb in this case is superfluous. IAE, to use one you would need to "require" it in your chief macro and then call any specific "defined" function within that rb file. The only reason for using an rb file is for utility functions that aren't otherwise available that you would need in many different user macros. This one is object specific to any object that has a "length" attribute.
-
I don't know what your ACAD Blocks include - I assume they are mostly Details. If that's the case I would definitely be interested if you can export the Library.