Sunday, January 31, 2010

Does Taxing the Rich Help Me?

***This will be last non-Civil 3D related post here on this blog. I’ve decided to put non-Civil 3D related posts on this new blog: ***

The United States has a progressive income tax system, the more you make the higher percentage of income tax you pay. Some in Congress, and the President, are advocating that certain tax cuts on those making over $250,000 expire (the tax rate would go from 33% to 36% for money earned from $250k to $373K and from 35% to 39.6%). I’m not quite sure how this benefits me, a furloughed Civil Engineer. If anything I only see negatives from this for me.

It doesn’t balance the federal budget, it only “helps”. If anything it prolongs me getting a job by pulling money out of the economy. I work in an industry that is largely discretionary in nature. Governments have the discretion to improve and maintain the government owned infrastructure. Land owners, and their investor partners, have the discretion on whether to improve the land they own (with the governments permission). While the government spending has increased it has not increased adequately to compensate for the decreases in the private sector. Who funds the private sector developments? Last time I checked it’s not the person behind the counter serving me fries. It tends to be people who have a large amount of discretionary income, the very people the taxes will affect.

Now a large part of the problem is that people have lost faith and aren’t using their discretionary spending on land development. I can’t really blame them. If they had some of their money invested in land development during this current bust they probably lost some money. Locally there has been two or three investment funds go bust. There’s also a lot of housing and commercial stock on the market which needs to be filled up with families or employees. Taxing the rich only delays this.

Now what could the government do that would really help get investors back into the game? How about getting out of the way? The first step could be requiring federal and local agencies to deal with permit requests within 10 working days. Any time period beyond that time the governmental agency would pick up the tab for the costs involved in the delay (interest, inflation, etc.). This would remove a large portion of the risk in land development and provide an incentive to investors to reenter the market. Best of all it wouldn’t increase the national debt.

Friday, January 29, 2010

Dynamic Profile Label

I’ve hit a snag on my pipe crossing label using profile view labels as shown in the video below. The label moves to an incorrect location on open since the number of grips is different from when the drawing is fully open. I’m going to head to San Francisco next week to try to get a solution to my problem at a DevLabs. Since I have some free time, and the help fits my budget (free), I thought I’d make the journey.

I’m thinking of taking the train up to San Fran and try to make a Surface label dynamic to a profile. That imageway if the profile moves the label will continue to point to the correct location. I think, except for the above grip problem, to have everything I need to accomplish it.

If you are in San Francisco and want to meet up let me know by sending me an email. I’ll be down near the Embarcadero on Wednesday and Thursday.

Certified Cost Engineer

It looks like my Excel Flash Card program works wonders. I got word today that I passed the examination to be a Certified Cost Engineer (CCE). Also included was word that I can successfully write a technical paper, also in regard to the CCE. So what is CCE?

“Since 1976, AACE’s CCC/CCE™ has recognized several thousand certified individuals as Certified Cost Consultant™ / Certified Cost Engineer™. AACE’s CCC/CCE™ is independently accredited by the Council of Engineering & Scientific Specialty Boards (CESB) and the International Cost Engineering Council (ICEC). The intent is to recognize specialists who meet a demanding set of earned value management criteria by a rigorous examination, experience, education and ethical qualifications. The CCC/CCE™ requirements reflect the sophistication of individuals in today's earned value industry and it fairly measures their knowledge, experience and adherence to best management practices.”

“CCC/CCE™ certification distinguishes cost and management professionals who have the knowledge and skills that impact the bottom line. AACE certification ensures a high quality standard.”

More information may be found on the Association of the Advancement of Cost Engineering’s website.

So that makes me a furloughed Civil 3D expert, professional engineer, LEED accredited professional, certified nuclear gage operator and now certified cost engineer.

Wednesday, January 27, 2010

Updated Civil 3D Reminders Pack

I’ve made some improvements to the Civil 3D Reminders Pack 2010 and I am looking for beta testers to try it out. The new features include linking a MLeader to a crossing pipe in profile and linking laterals to main line pipes.  I’m sure there are some bugs or situations I haven’t thought of happening which could cause unexpected results, which is why I’m looking for Beta testers.

The video below shows the commands in action.

If you are interested in beta testing these new features, send me an email (the link is on the right side of the page).

The relevant commands are:

C3DRLinkCrossingProfileViewLabel – Links a MLeader to a Pipe crossing a profile. The station and elevation of the pipe is updated when the pipe is moved.

C3DRUpdateSewerLaterals – Creates a link between a mainline pipe and a lateral pipe. If the mainline pipe is modified the laterals will update accordingly. The user is given an option to have the other end adjust or have it stay in place.

C3DRTurnOnAutoUpdateSewerLaterals – Turns back on the link between the mainline pipe and lateral if it has been disabled. The laterals do not update automatically, the mainline pipe would need to be updated.

C3DRTurnOffAutoUpdateSewerLaterals – Turns off the link between the mainline pipe and a lateral.

Station Offset Label – Aligned on Sheet

Some people like things aligned on sheets. One of these items are station offset labels. They’d prefer the station offset labels be aligned near the top of a sheet away from the actual object they are labeling.


We can get this look by utilizing expressions. The first expression is going to be called YValue. This value will establish the Northing value the station offset labels should be aligned with. For this post I’m using 2600.


The next expression will calculate the distance from the point being labeled to the point we want the label to show. The Drawing Conversion Scale Conversion changes the value from feet to inches.


Now put the Difference expression as a Y offset. This will move the component of the label to the correct location.


Here’s the look of the label I’ve created.


Not quite the look of the picture in the beginning of this post, but it conveys the concept of how to accomplish the label. If you want to download the drawing you may find it here. If you have more than two rows you’ll have to create a Y expression for each row of Station Offset Labels.

Monday, January 25, 2010

Dragging Civil 3D Labels

Over on the Discussion Group Tony Tanzillo posted a way to drag Civil 3D point labels programmatically. I’m having some difficulty, but using this method should allow one to figure out where a label is located in a drawing. So far I’ve been able to get the location of Profile View Station Elevation label, which I was having problems with earlier. Here’s the link to the post:

Thursday, January 21, 2010

Dear Sustainability Movement,

Please cease and desist all claims of saving the planet in promotional, educational and propaganda materials. I’ve done a simple calculation that indicates to me that the movement is not sustaining the planet, but is delaying the destruction of the planet. My main concern with claims of providing sustainability is the complete lack of attention the movement puts on population growth.

For instance I’ve taken a look at the energy consumption for the State of California between 1970 and 2000. The population figures for the state of California are below from the US Census.

1970 California Population: 19,953,134

2000 California Population: 33,871,648

Below is the Energy Consumption for the state of California and per person:

1970: 41,844,077 Energy Units : 2.09 Energy Units/person

2000: 61,337,853 Energy Units : 1.81 Energy Units/person

As indicated in the above numbers California became approximately 14% more energy efficient, or more sustainable, between 1970 and 2000. Unfortunately due to population increases California utilized 146% more energy in the year 2000 compared to 1970. I’m not quite sure how this energy use could be considered sustainable.

The same pattern is detectable in other areas focused in on by the sustainability movement such as land use, water use and daylighting. Without a focus on population growth the sustainability movement is destined to fail. There is no feasible way the concepts and ideas can be considered sustainable without controlling population growth. The UN calculates the World’s population went from 3,685,777,000 to 6,115,367,000 from 1970 to 2000. Additionally projections of the World’s population is to increase by an additional 1.2 billion people by 2030. Without a major shift to population growth sustainability will never be achieved.

Here are some ideas to include sustainability in the movement to become realistically sustainable:

  • A requirement for residential buildings have Covenants, Conditions & Restrictions to limit the number of children people can have. China’s current children policy of "One is best, two at most, but never a third" appears to be affecting change there in population growth.
  • Much in the same way as the LEED process encourages the use of electrical vehicles the same could be done with limiting children. Businesses occupying LEED rated buildings could require policies that discourage employees having children. Such as not providing benefits for the third child and more.
  • Encourage businesses to focus on dividends instead of growth.
  • Remove tax credits children and replace it with an increased tax rate for families with three or more children.

While I can understand why the movement is not going in this direction, for fear of upsetting people, I fully expect without changes like this the movement is destined to fail and never reach the goal of sustainability.


Christopher Fugitt, PE, LEED AP

Saturday, January 16, 2010

The Government’s Mortgage Mess?

Today I deposited my first unemployment check. I’ve also listened, read and watched the President RateTabledemand that banks, who paid back the TARP money with interest, refund the government for the TARP money the government won’t get back from other failed companies who did not make it. That doesn’t sound quite fair considering the government has a big hand in causing people to lose their home. Much has been made about banks providing loans to people who couldn’t afford it, but what hasn’t been covered is the way unemployment is paid out which impacts the middle class causing them to lose their homes.
In the State of California unemployment is paid at 50% of your salary up to $46,696.04/yr. After this point for each dollar you earned before losing your job you don’t get any benefits. Because of this, at least in my case, means I’m getting around 30 cents on the dollar. Considering when banks  give out home loans they want to keep housing costs maximized at 30% of income, it doesn’t take a genius to figure out the math doesn’t work and people are losing homes.
Now it’s nice and easy to blame banks for the mortgage mess, but I think it’s time the politicians acknowledge that it’s not all the bank’s fault for houses falling in default. Now I’m not calling for the government to raise the amount I get for unemployment, I’m just wishing that they’d stop blaming the banks.
Now what’s really bizarre is that if I do lose my house the purchasers will get a $6,500 (or $8,000 for new home buyers) tax credit. Remember that a tax credit is subtracted directly from the tax paid, so it’s essentially a government check to the purchasers of homes. If I did the math correctly that means that the purchasers of my home would get an additional $1,725 (or $3,225) over than the amount it would have taken for me to get paid at a 50% rate (for the 13 weeks unemployment benefits last). At a 50% rate I have a better chance of keeping my home without further assistance. At half that I don’t really have a chance, if I remain unemployed long term, to keep my home without further assistance.
In this blog post losing my house means selling it, not foreclosure, unless the housing market falls further.
In case you wanted to know how unemployment is paid, from the State of California’s website:

“UI is paid by the employer. Tax-rated employers pay a percentage on the first $7,000 in wages paid to each employee in a calendar year. The UI rate schedule and amount of taxable wages are determined annually. New employers pay 3.4 percent (.034) for up to three years. EDD notifies employers of their new rate each December. The maximum tax is $434 per employee per year. (Calculated at the highest UI tax rate of 6.2 percent x $7,000.)”

Thursday, January 14, 2010

Old Funny Article

This article is from sometime in 1945, ran across it while scanning some old family photos.

I guess the "Greatest Generation" also had some duds.

Tuesday, January 12, 2010

Civil 3D 2010: Structure Descriptions

Civil 3D 2010 changed the way structure descriptions are populated when structures are created. The description used is the part family. In the past the description included size information.

The easiest way to get the old type description (after the initial setup) would be to create a custom pipe rule that would set the desired description. I’ve done some posts in the past that have covered how to create custom pipe rules, an AU paper in 2007 and you can also find some information in help.

As indicated in my last post this idea won’t work for Null Structures.

Sunday, January 10, 2010

Null Structures: Description

If you want to change the description of a Null Structure to something other than “Null Structure” you can’t. Civil 3D 2010 doesn’t let you change it, well you can change it but Civil 3D 2010 replaces it immediately with “Null Structure” after you change it in the API. Well it keeps the changed value stored, but it only will show as “Null Structure” in the program. Hopefully in a SP or future version they will allow us to change the value to a custom one.

Tuesday, January 05, 2010

Delete Duplicated Point Groups

This post comes from a suggestion from Matt:

“Here is another little tool idea for you. 


When some drawings get inserted by others when they make a mistake, the default Civil 3d renaming is to tag a .1 value to the group name.  It’s a pain to remove, does the API have a way to remove groups that match those values?”

In this post I’m going to do the down and dirty of getting it the duplicated point groups removed. If you for some reason use “.1” behind the point groups this post won’t work or you’ll have to modify the code to work with how you work.

The code started with the SurfacePointsSample.dvb file that comes with Civil 3D. I deleted most of the items I didn’t need and then added the code below.

The first thing that needs to get done is to cycle through all of the point group objects in the drawing. Next I got the number of characters in the name of the point group, using len function. With this information I can then use the InStr to see if the “.1” is the last two characters of the name of the point group. To do this I use the length of the name string minus 2. This will start the InStr function before last two characters of the point group name. If the name contains the “.1” as the last two characters then cPos will have a value greater than 0. If the condition is met then the point group is deleted.

The only problem with this is that the Toolspace doesn’t refresh. To get the point groups to show up correctly you’ll need to refresh the point groups in the Toolspace.

Sub AddPointsToSurfaceTest()
' Always get the objects again since MDI is supported.
If (GetGlobalCivilObjects() = False) Then
MsgBox "Error accessing root objects."
Exit Sub
End If

Dim oPointGroup As AeccPointGroup

For Each oPointGroup In g_oDocument.PointGroups
Dim sName As String
sName = oPointGroup.Name
Dim cLength As Double
cLength = Len(sName)

Dim cPos As Double
cPos = InStr(cLength - 2, sName, ".1")

If cPos > 0 Then
End If

End Sub

Here’s the code in action:

If you want to save yourself some time you can purchase the completed code for $5 that works with Civil 3D 2010 and can be easily modified for prior versions using this post.

If you have any problems with getting the file after buying, Email me.

Friday, January 01, 2010

Got to Have a Goal

For the past year this blog has been running on my goals for the year. I did 201 posts last year, 51 more than my goal of 150. Traffic appears to be leveling out, as traffic was only up 121% compared to an increase of 290% the previous year. Most of the visits, ~65%, came from Google searches. Unfortunately it appears that advertising for Civil related products is down quite a bit. In April revenue fell 50% compared to March (which wasn’t all that high to start with) and stayed low throughout the year, most likely reflecting the current market conditions in the civil engineering marketplace.

For the next year I’m going to scale back my posts to the blog to a total of 52 posts. If the advertising bounces back or I am able to derive more income from this blog I’ll post more often.



Blog Widget by LinkWithin