Community
Civil 3D Forum
Welcome to Autodesk’s Civil 3D Forums. Share your knowledge, ask questions, and explore popular AutoCAD Civil 3D topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2012 subassembly code name inconsistency or code set style edits do not update

18 REPLIES 18
Reply
Message 1 of 19
granite07
779 Views, 18 Replies

2012 subassembly code name inconsistency or code set style edits do not update

The subassembly.MedianFlushWithBarrier has has parameters for Pave1 depth and Pave2 depth. In a new code set style for subassembly.MedianFlushWithBrrier the import codes selection of the assembly creates link codes Pave, Pave1, Pave2, and Pave 3; Pave and Pave 3 are not parameters in the subassembly.MedianFlushWithBarrier

 

Also, if I look at the assembly properties there is Pave1 and Pave2 depths, but no Pave or Pave 3; If I look at the assembly properties code tab there is the 'Basic' code set style and under link there are Pave and Pave1 but no Pave2 or Pave3.

 

If I select edit code set style, the 'Basic' code set style has only <default> and <no codes> for link, point, and shape codes.

 

Disclaimer: I have changed the basic code set style from default and then later edited it to only <default> and <no codes> for link, point, and shape codes. Also, I am using the code set styles to create 'locations' in the model for a location-based corridor quantity takeoff. Also, this model is in inch model space units and was once a metric template but now is a customized imperial-type template.

 

  1. Is there a mistake that the subassembly.MedianFlushWithBarrier code set does not change to a new 'Basic' from a past 'Basic' code set style?
  2. I think if I delete the assembly and create a new assembly then the new Basic code set style will be displayed - is this correct?
  3. In the QTO report the Pave and Pave 1 quantity is the same, appearing redundant or possibly a previous computation of QTO that did not clear when payItem was reassigned from Pave1 to Pave

I documented the test here http://cife.stanford.edu/wiki/doku.php?id=granite:3dmodelling:qto#c3d_qto

 

I'd like to complete a QTO this week and cannot until it is clear that the payItems should be assigned to Pave or Pave1 and if the assembly is currupted and should be redone from fresh.

 

Forest Peterson, granite@stanford.edu; build-sheet
18 REPLIES 18
Message 2 of 19
mathewkol
in reply to: granite07

It sounds very much like you're missing some knowledge about code set styles and Poin, Link, and Shape codes.  A good bet would be for you to search for some Autodesk University classes on code set styles and watch them.

 

You mentioned that Pave and Pave3 are not parameters in the subassembly.  Yup, that's correct.  These are link codes for each of the lines of pavemen.  You can use these link codes to label these lines in your sections.

 

There are no pave or pave3 depths because there are only 2 layers of pavement in that subassembly, the top and the bottom layers.  This gives you the option to calculate the different layers os pavement separately.  They are the same volume because they are set to the same depth.  If you change the depths you will get different volumes.

 

When you edit the code set style "Basic", ther are no codes in there because none have been added.  You edit the code set style or create a new one and add codes yourself.  Any chnages you make to assemblies have no effect on what codes you have defined within the code set style.

 

Your answers...

1.  There is no mistake.

2.  Deleting the assembly will have no effect.  It's all about which code set style you apply to the aseembly.

3.  The volumes for Pave1 and Pave2 are completely separate.  They are calculating different layers of pavement.

 

Go and watch the videos at Autodesk University about code set styles.  they will help you understand them and the codes.

Matt Kolberg
SolidCAD Professional Services
http://www.solidcad.ca /
Message 3 of 19
granite07
in reply to: mathewkol

Thank you for your assistance; I have watched the videos you referenced and read Mastering AutoCAD by Wedding, as well as the Civil 3D book by Ward and Orem. The purpose of the link codes is clear. I will restate my question more accurately.

The subassembly.MedianFlushWithBarrier has parameters for Pave1 and Pave2 depths but not Pave or Pave3, as you noted this is correct.

I created a new code set style named 'Basic' with only <default> and <no codes> for link, point, and shape codes - I think this is where I confused you. I modified Basic with a roadway cross-section selection, realized my mistake then deleted Basic and created a new one. But, the subassembly.MedianFlushWithBarrier still has the old Basic code set style that I made not the new one.

Also, I created a new code set style for subassembly.MedianFlushWithBarrier, the import codes selection created Pave, Pave1, Pave2, and Pave3 - why; is this due to the previous issue with the the old Basic code set still providing the extra Pave links?

The volumes I checked are with Pave1 set to .9' and Pave2 set to 0' so they should not be the same; I failed to mention this since it seemed obvious they would be the same if they had the same depth. It looks like and in other forum threads others have written that a previous computation of QTO will not clear when payItem is reassigned. So when I reassigned the payItem from Pave1 to Pave they now both have the same quantity, this is not correct. Is this what I am seeing?

Forest Peterson, granite@stanford.edu; build-sheet
Message 4 of 19
granite07
in reply to: granite07

here are pictures of the median flush with barrier properties and code set style, you can see that they are different. I opened a new instance of Civil 3D for these images and used a new template file. I opened a metric template file and there is Pave1 and Pave2 in properties but in code set style there is Pave, Pave1, and Pave2 - I can post more images if you want.

 

medianFlushWithBarrier_property.jpg

 

medianFlushWithBarrier_codeSet.jpg

Forest Peterson, granite@stanford.edu; build-sheet
Message 5 of 19
mathewkol
in reply to: granite07

Weird.  I'm actually using the Import Codes here and I do not get the Pave3 link code.  I looked in the help for that sub and there is no Pave3 link code there either.

Matt Kolberg
SolidCAD Professional Services
http://www.solidcad.ca /
Message 6 of 19
granite07
in reply to: mathewkol

I would like to have a QTO for the single layer pave surface. I figured I would do this by assigning a payItem to the pave1 link. However I'm getting the option for pave and pave1. I would like to have the pave quantity in the QTO report.

Forest Peterson, granite@stanford.edu; build-sheet
Message 7 of 19
Sinc
in reply to: granite07

Are you aware of the difference between a Point Code, a Link Code, and a Shape Code...?  From your questions, I'm beginning to think this might be one of your points of confusion.

Sinc
Message 8 of 19
granite07
in reply to: Sinc

yes, I have built several subassemblies and learned in the process what link, point, and shape codes are.

Forest Peterson, granite@stanford.edu; build-sheet
Message 9 of 19
granite07
in reply to: granite07

For documentation and future reuse of this thread from search results, lets make it explicit what the codes are; from my understanding the three code types are:

 

  • 'points' are 1D points placed on a C3D object and have no area only length - typically all the corners and if speciifed at midpoints
  • 'links' are the 2D areas, they link the points or can by extensions from a point away from the object, basically all the flats of the object and these form the surfaces
  • 'shapes' are the object outline and a 3D volume when extruded along a swept surface

I am guessing at why they are called 'codes'; because in the .NET text file a point, link, or shape is represented by lines of code - also the point and link codes can have payItems assigned to them, commonly called cost codes, so another reason for the term codes. The shapes do not have payItems assigned but can have materials assigned for a 'cumpute material' volume quantity takeoff by station region. 

 

Please explain the inconsistency for subassembly.MedianFlushWithBarrier from the parameters for Pave1 and Pave2 depth to the Code Style Set - created from the assembly subassembly.MedianFlushWithBarrier - link code that displays Pave and Pave1 as shown in the images below.

 

I solved the issue with the subassembly.MedianFlushWithBarrier displaying the older 'Basic' code set style modified attributes I created after editing the code set I by deleting the assembly and creating a new assembly the the new Basic code set style is now displayed. But, the Pave and Pave1 link incosistency between subassembly properties and code set style is still an issue.

Forest Peterson, granite@stanford.edu; build-sheet
Message 10 of 19
hroedel
in reply to: granite07

I thought you were going to post screenshots. Please include identifiers on the screen captures to point us where to look. I'd also like to see a capture of your QTO report so I can see what your problem is (rather than reading about it).

Message 11 of 19
Sinc
in reply to: granite07

The term "code" in this context has no relation to "lines of code".

 

Instead, "identifier" would be more appropriate.  The "codes" are used only to identify certain pieces of subassemblies.

 

It isn't particularly useful to try and equate points and links to "dimensions".  If we were to do that, the Points are actually without dimension (0D), and lines have only one dimension (1D).  But like I said, that paradigm isn't particularly useful.

 

There is no inconsistency in the coding.  If you look in the coding diagram in the Help File for that Subassembly, you should see that lines L1 and L2 have the "Pave" code assigned, L3 and L4 are "Pave1", and L5 and L6 are "Pave2".  There are also the shapes, with S1 coded as "Pave1" and S2 coded as "Pave2".

 

Depending on what you are doing, you will be using either Link Codes or Shape Codes.  This subassembly has a "Pave1" link code, but it also has a "Pave1" shape code.  These are not the same thing.  The subassembly also has a "Pave" link code, but no "Pave" shape code.  Depending on what you are doing, some things use Link Codes, and some things use Shape Codes.

 

This gets back to my earlier question, and why it seems to me that you are confused about the difference between the types of Codes and how they are used...

Sinc
Message 12 of 19
granite07
in reply to: Sinc

I am assigning payItems for quantity takeoff and so since shape codes do not have payItems we are only discussing points or links, and for this specific issue it is pave area and/or volume so therefore we are only concerned with links.

 

These are the screenshots - the first is the subassembly properties and the second is the codeset style and also acts as a screenshot of the QTO with the payItem assigned. I cannot run a QTO report and take a screenshot because once a report is done any change in payItem will create a new line item and retain any previous line items with the quantity for payItems that were removed or changed.

 

We will look only at half the corridor since they are reported this way in QTO report; If L1 is "Pave"; L3 is "Pave1"; and L5 is "Pave2" then the documentation leaves it to the user to make the leap that Pave1 depth is the distance between L1 and L3. If pave one depth is the depth from L1 to  L3 then is it safe to assume that this is what the code style set link Pave associates with? Or, does Pave associate only with L1, Pave1 associates with L3, and L5 cannot have a payItem assigned to it nor is displayed in the code set style; intuitively it is the former scenario and Pave is the volume between L3 and L1.

 

There is a sample corridor model placed here in a thread discussing the code set style link volume behavior in QTO report; it relates to our current discussion since it looks like there may be a question about the code set style payItem unit of measure of volume or only area.

http://forums.autodesk.com/t5/AutoCAD-Civil-3D/C3D-2012-QTO-report-duplicates-payItem-links-and-volu...

 

C3D_properties_pave1Pave2.jpg

 

C3D_properties_quantity.jpg

 

I agree that the C3D software designers used some clumsy terms, another is payItem, a better term is 'chart of account'.

 

Also, I agree points are without dimension but since they act as part of a swept corridor then points in use acquire the dimension of length (1D), this is what I described; same for the link that acquires the dimension of area and shape that acquires volume when swept as part of a corridor. I think this is important for quantity takeoff purposes and was a conceptual hurdle that I had trouble with initially, until I though of them as their respective final dimension state.

 

It is clear that the "Pave1" link code and "Pave1" shape code are not the same thing; but a good distinction to document here for anyone who has a similar issue and reads this thread.

Forest Peterson, granite@stanford.edu; build-sheet
Message 13 of 19
hroedel
in reply to: granite07

I still want to see a QTO report. Can you save a copy of your file to run QTO reports for this forum? I couldn't see where in your last post you discuss the problem that you are having (ableit was an informative post 🙂

 

Also I had trouble following this:

 

@granite07 wrote:

 If L1 is "Pave"; L3 is "Pave1"; and L5 is "Pave2" then the documentation leaves it to the user to make the leap that Pave1 depth is the distance between L1 and L3. If pave one depth is the depth from L1 to  L3 then is it safe to assume that this is what the code style set link Pave associates with? Or, does Pave associate only with L1, Pave1 associates with L3, and L5 cannot have a payItem assigned to it nor is displayed in the code set style; intuitively it is the former scenario and Pave is the volume between L3 and L1.

 

 

I can't picture this in my head, need more diagrams 🙂

Message 14 of 19
granite07
in reply to: hroedel

If L1 is "Pave"; L3 is "Pave1"; and L5 is "Pave2" then the documentation leaves it to the user to make the leap that "Pave1 depth" (subassembly property attribute) is the distance between L1 and L3. If "Pave1 depth" is the depth from L1 to  L3 then is it safe to assume that this is what the code set style link "Pave" associates with? Or, does the code set style link "Pave" associate only with L1, Pave1 associates with L3, and L5 cannot have a payItem assigned to it nor is displayed in the code set style or the subassembly properties attributes; intuitively, it is the former scenario and the code set style link "Pave" is the volume between L3 and L1.

Presentation1.jpg

I am working on the QTO graphic, I will create a corridor 100' long and 20' wide then define the median subassembly "Pave1 depth 1'" and "Pave2 depth" 2' then link payItem1 to code set style link "Pave" and payItem2 to code set style link "Pave1"; the result should be the quantity 1,000 CF for payItem1 and 2,000CF for payItem2. from this thread http://forums.autodesk.com/t5/AutoCAD-Civil-3D/C3D-2012-QTO-report-duplicates-payItem-links-and-volu... I predict that the actual quantity displayed in the QTO report will be 83.3 CF for payItem1 and 166.67 CF for payItem2.

Forest Peterson, granite@stanford.edu; build-sheet
Message 15 of 19
granite07
in reply to: hroedel

PAY_ITEM_ID,DESCRIPTION,QUANTITY,UNIT,BASELINE,CENTROID_STATION,CENTROID_OFFSET,REMARKS
111.111.111,Pave1,1000.00,CF,,, ,Corridor Link Code: Pave
111.111.111,Pave1,1000.00,CF,,, ,Corridor Link Code: Pave
222.222.222,Pave2,1000.00,CF,,, ,Corridor Link Code: Pave1
222.222.222,Pave2,1000.00,CF,,, ,Corridor Link Code: Pave1
222.222.222,Pave2,1000.00,CF,,, ,Corridor Link Code: Pave1
222.222.222,Pave2,1000.00,CF,,, ,Corridor Link Code: Pave1

 

Not exactly what I expected - forgot that this test corridor model is in feet msu, if in inch msu my predicted values would have been correct; this does not answer the base question and raises two new questions,

  • Is code set style Pave linked to the Subassembly Pave1 depth; same question for Pave2 depth?
  • Pave1 has Lt and Rt quantity but Pave2 has 2 Lt and 2 Rt, why?
  • the quantity is correct for Pave1 but Pave2 is wrong, unless I add two line items 1,000 + 1,000 = 2,000?
Forest Peterson, granite@stanford.edu; build-sheet
Message 16 of 19
granite07
in reply to: granite07

I changed the dimension of the subassemby from Pave1 depth 1' to .9' and Pave2 depth from 2' to 1.9' and ran the quantity takeoff report again - this is the result; the same. I think the sourceCode is using an Int and does not use anything but a nominal number and so cannot use the decimal, rounding back to 1' and 2'.

 

                                                                       Detailed Volume Takeoff Report                                                                      
                                                                       ------------------------------                                                                      
                                                                                                                       Centroid       Centroid      
Pay Item ID       Description                         Quantity     Unit   Baseline          Station        Offset            Remarks            
---------------   -------------------------------     ----------   ----   ---------------   ------------   ---------------   --------------------
111.111.111       Pave1                                 1000.00      CF                                                        Corridor Link Code: Pave
111.111.111       Pave1                                 1000.00      CF                                                        Corridor Link Code: Pave
222.222.222       Pave2                                1000.00      CF                                                        Corridor Link Code: Pave1
222.222.222       Pave2                                1000.00      CF                                                        Corridor Link Code: Pave1
222.222.222       Pave2                                1000.00      CF                                                        Corridor Link Code: Pave1
222.222.222       Pave2                                1000.00      CF                                                        Corridor Link Code: Pave1

C3D_properties_pavePave1_fractional.jpg

Forest Peterson, granite@stanford.edu; build-sheet
Message 17 of 19
granite07
in reply to: granite07

Intuitive conclusion:

  • the C3D QTO function rounds the corridor layer depth to a Nominal number due to the use of an int string type and divides the subassembly layer depth by 12 - if in feet msu the 1/12 multiplier is correct, if in inch or other non-typical msu be aware that the multiplier will be incorrectly applied.
  • for the subassembly.MedianFlushWithBarrier the Pave1 depth is associated with the code set style link Pave (region between subassembly link  L1 and L3) and the Pave2 depth is associated with the code set style link Pave1 (region between subassembly link  L3 and L5); similar association with the link regions on the right side of the subassembly.
  • I will start a new thread to address the issue of the code set style edits that do not update
Forest Peterson, granite@stanford.edu; build-sheet
Message 18 of 19
granite07
in reply to: granite07

Intuitive conclusion (correction to previous):

  • the C3D QTO function rounds the corridor layer depth to a Nominal number due to the use of an int string type and divides the subassembly layer depth by 12 - if in feet msu the 1/12 multiplier is correct, if in inch or other non-typical msu be aware that the multiplier will be incorrectly applied.
  • for the subassembly.MedianFlushWithBarrier the Pave1 depth is associated with the code set style link Pave1 (region between subassembly link  L1 and L3) and the Pave2 depth is associated with the code set style link Pave2 (region between subassembly link  L3 and L5); similar association with the link regions on the right side of the subassembly; the graphic given below incorrectly point Pave1 depth the the Pave link code, it should be to the Pave1 link code.
  • The subassembly volumes are from surface up to next surface, starting with datum which has no volume only surface through to Pave which also has no volume only surface area; the surfaces in-between have volume and associate with the property attribute for depth.
  • If a depth attribute is defined with a depth of 0 then the associated link, point, and shape codes are not displayed on the corridor properties codes tab but will still be displayed in the code set style edit.
  • I started a new thread to address the issue of the code set style edits that do not update
Forest Peterson, granite@stanford.edu; build-sheet
Message 19 of 19
granite07
in reply to: granite07

It appears clear these are bugs in the C3D application and should be corrected, the C3D QTO function has the foillowing behavior with the subassembly link layer depth :

 

  • depth of greater than 1' defaults back to 1' - eleiminating the use of a section greater than 1'
  • rounds to a Nominal number - assumed due to the use of an int string type - the result is that QTO rounds a depth less than 1' and greater than .5' to 1', eliminating the use of these depths
  • depths from .01 to .49 are rounded to 0 and it appears they are then by default given a value of 1' since the use of 0 in the subassemblies indicates a link layer is omitted
  • the result of the previous three 'features' is that the depth can in reality only be defined as 1 and 0
  • if the depth was functioning, the subassembly layer depth is divided by 12 - if in feet msu the 1/12 multiplier is correct, if in inch or other non-typical msu it is incorrectly applied.

Conclusion: unless all the subassembly roadway layers are either 1' or 0' then the QTO volume calculation cannot be used - so the compute materials or volumes takeoff tools must be used, if the volumes are well defined by subassembly bounding boxes then compute materials is likley best, if the volumes are uneven surfaces then volume takeoff is probbaly best. This is specifically - in addition to  incompatibility with 3D solids and mass elements - why QTO does not work for volumes.

 

More documentation http://cife.stanford.edu/wiki/doku.php?id=granite:3dmodelling:qto#c3d_qto

Forest Peterson, granite@stanford.edu; build-sheet

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Rail Community


Autodesk Design & Make Report