Announcements

Starting in December, we will archive content from the community that is 10 years and older. This FAQ provides more information.

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: 

Changing World 0,0 point in a georeferenced file

15 REPLIES 15
Reply
Message 1 of 16
nano_langenheim
1783 Views, 15 Replies

Changing World 0,0 point in a georeferenced file

Hello there,

 

I currently work between GIS, Civil 3D and 3DS Max. Civil 3D works as the exchange point. I import shape files into a georeferenced Civil 3D using mapimport. I thn export parts of the dwg to 3ds Max. The 3ds Max file has it's 0,0 at a known geographic location. i.e. in Max 0,0 = lat lon -37.7072, 144.967.

 

Ideally I would be able to make the Civil 3D file 'believe' that it's world UCS has 0,0 at these same co-ordinates so that I can import and export linework between Civil and 3dsMax. I can partially achieve this by changing to a ucs that uses the lat lon point as the base and then wblocking out the desired parts - but what I really want is for the World UCS to be at my lat lon point as this would be a much cleaner solution.

 

Does anyone know if there is a way to do this? I know I can change the base point - but I was hoping for a solution that is a little cleaner or more elegant.....

N-particle
15 REPLIES 15
Message 2 of 16
Pointdump
in reply to: nano_langenheim

NP,
Lemme see if I understand. You want to be at AutoCAD 0,0 when your Coordinate System is 320640-ish,5824750-ish?

 

MGA_1.png

 


Dave

Dave Stoll
Las Vegas, Nevada

EESignature

64GB DDR4 2400MHz ECC SoDIMM / 1TB SSD
NVIDIA Quadro P5000 16GB
Windows 10 Pro 64 / Civil 3D 2024
Message 3 of 16

If your lat/long is -37.7072, 144.967 then you are south of the equator (you provided a negative latitude). Your 'high value' longitude indicates you are circumventing the equator to a location that's almost on the opposite side of the prime meridian (almost halfway around the world). I'm guessing your site is in, or near, Australia.

 

You are able to move back and forth between ArcGIS and Civil3D because both programs can understand coordinate systems and both are capable of transforming between geographic coords and projected coords. Moving back and forth between ArcGIS (or C3D) and 3DSMax may seem like a good good idea but you must exercise caution when doing so. The most important thing when moving between programs are the UNITS of the coordinate system.

 

While both ArcGIS and C3D can understand projected x,y's used in coodinate systems that use meters, they can also understand geographic lat/long coordinates that use degrees. Both programs are capable of transforming from meters to degrees and vice-versa. This means when you assign a coordinate system that uses meters to C3D modelspace, then input data such as lat/long coordinates in degrees, C3D will calculate the given lat/longs coords to the equivalent x,y coords. Civil3D is essentially transforming a known point from degrees to meters.

 

Q: Will the coordinates -37.7072, 144.967 and the coordinates -37.7072, 144.967 pinpoint the exact same spot on Earth?

A: Maybe, maybe not. It all depends on the units. If one pair of coords is lat/long degrees and the other pair in meters, then no. Give identical pairs of numbers, a lat/long point will not be located at the same spot as an x,y point.

 

Q: Can Civil3D distinguish between lat/long coordinates and x,y coordintes?

A: Yes, it can, but only if you know how to input, or feed, the coordinate data into C3D.

 

Q: Can 3DSMax distinguish between lat/long coordintes and x,y coordinates?

A: AFAIK, no. The program doesn't understand lat/long degrees. If you give it 144.967 degrees it will treat it as 144.967 meters.

 

<<.....but what I really want is for the World UCS to be at my lat lon point as this would be a much cleaner solution.>>

 

In C3D, ArcGIS and all other geospatial capable programs, the Lat/Long coord system, such as LL84, is a 'World' coordinate system (yes, LL 84 is a global coord system) that uses units of degrees, not meters. In 3DSMax, you must use meters (or mm) because 3DSMax isn't capable of understanding lat/long degrees.

 

You need to convert your lat/long coords into your corresponding MGA grid which uses meters. Once converted, you can then use those coords in 3DSMax. The actual conversion from degrees to meters must occur prior to doing your work in 3DSMax. Yes, the numbers in the coordinate system will be large, but they will be geospatially sound and exporting to a format understood by C3D will now be accurate.

 

Chicagolooper

EESignature

Message 4 of 16
nano_langenheim
in reply to: Pointdump

Yes, totally - I want it to do a sort of transpose. If I set the map point
at 0,0 before bringing in a shape file, the background map behaves as
desired, but thrn when i import a shape file it is in the wrong place (it
doesn't know about the transpose). I might be asking too much from it....
N-particle
Message 5 of 16

Thank you very much for this, it is a well considered answer.

I can move between QGIS and Civil3D quite happily using the projected
coordinate system GDA94 toMGA55 (Yes, well done, Australia!).
The Civil 3D file is in meters with XY coordinates as you suggest, but
Civil also allows the placing of a point through the geolocation tools in
lat long format and to specify the datum those coordinates come from (I may
be doing this incorrectly).
I also have a plugin for 3dsMax that allows me to import a shape file and
to set the 0,0 location in the file from coordinates (which would normally
be many kilometers away from 0,0).

My process requires drawing geometry in Autocad and bringing that into the
modelling rendering animation environment 3ds Max. The Autocad work also
needs to talk to the georeferenced shape files.

I really may be expecting too much. I can achieve what I want to a certain
extent just by changing the UCS .....but this can cause other problems....
Thank you again, most appreciated.

N-particle
Message 6 of 16
AllenJessup
in reply to: ChicagoLooper

@ChicagoLooper 

 

That's a very good explanation of how things can happen with coordinates. More detailed than I could write without a lot of thought. The only thing I thought might be missing (or I may have missed it) was that the Lat/Long system is a spherical system. What we work in with Civil 3D is a rectilinear system. All grids are rectangles and when you add elevation you get cubes. When you add elevation to Lat/Longs you get pyramids truncated by spheres.

My point is that the transformation from spherical to rectilinear is just that. A transformation. A projection. Distances will be different. Working in a small area you won't see much  of that.

If you do a lot of transformations, back and forth multiple times. I would think you'd start to see errors cause by rounding.

I'm not much of an expert. I don't do it very much. But I find it fascinating to think about.

 

We live and work on a spinning spheroid circling a star that's moving through a galaxy, etc. 

Allen Jessup
CAD Manager - Designer
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.

EESignature

Message 7 of 16
wfberry
in reply to: AllenJessup

And to think that I just purchased a 2 year trip on the Enterprise.  I knew I should not have used Bitcoins.

 

Bill

 

Message 8 of 16
jmayo-EE
in reply to: nano_langenheim

The UCS is the answer. It's a great and powerful tool...  if you understand it. If you don't understand it you may think your files will corrupt, disappear or worse. 🙂

John Mayo

EESignature

Message 9 of 16
Pointdump
in reply to: nano_langenheim

NP,
"If I set the map point
at 0,0 before bringing in a shape file, the background map behaves as
desired, but thrn when i import a shape file it is in the wrong place (it doesn't know about the transpose)."
Got just the thing for you. You can create a Custom Projection with an Affine Post-Processor for either Transverse Mercator or Lambert Conformal Conic Projections. Translate, Rotate, Scale, the works.
Alan Gilbert shows basics >>>Here<<<. For a Deep Dive look >>>Here<<<.
You only other option is the Transformation Tab, which breaks Bing and most Map Commands.
Dave

Dave Stoll
Las Vegas, Nevada

EESignature

64GB DDR4 2400MHz ECC SoDIMM / 1TB SSD
NVIDIA Quadro P5000 16GB
Windows 10 Pro 64 / Civil 3D 2024
Message 10 of 16
Pointdump
in reply to: nano_langenheim

NP,
Attached, please find 2 drawings, one in MGA-55 and a Custom Coordinate System that should be what you're looking for. Also included is a Shapefile of Moreland-North and a Point Shapefile of -37.7072,144.967 Origin.
If you also need to Rotate and Scale, that's no problem, but you'll need 3 matching points to get parameters.

 

MGA_2.png

 

MGA_3.png

 


Dave

Dave Stoll
Las Vegas, Nevada

EESignature

64GB DDR4 2400MHz ECC SoDIMM / 1TB SSD
NVIDIA Quadro P5000 16GB
Windows 10 Pro 64 / Civil 3D 2024
Message 11 of 16


@nano_langenheim wrote:
<<Civil also allows the placing of a point through the geolocation tools in
lat long format and to specify the datum those coordinates come from (I may
be doing this incorrectly).>>

Contrary, to popular belief, the geolocation tool is tricky to use and not a good way to assign your coordinate system to modelspace. Here's an easier way: 

 

  1. Open a brand-new, clean metric template (or imperial if applicable) then use MAPCSASSIGN to search for, select, and assign an appropriate coordinate system. In your case, you are using the MGA coordinate system, meters. 
  2. Using your mouse wheel, zoom-out until you see the red geomarker (looks like a red bicycle wheel with red spokes). Center the geomarker in the middle of your monitor using the pan function.
  3. Turn on Bing Hybrid. Using the image as your guide, use your mouse to zoom-in and pan to your area of interest. Even if you turn OFF Bing imagery, your drawing is still accurately georeferenced against the coordinate system you elected to use in step 1.

What do the steps 1 through 3 mean? It means your drawing units are in meters and your x,y coordinates are accurately referenced against the MGA grid. Why meters? Because your AutoCAD drawing units inherit the same units as the assigned coordinate system. In your case, the Map Grid of Australia (MGA), uses meters.

 

Despite your assigned coordinate system using meters, you can, if you know how, input lat/long degrees in Civil3D. C3D will calculate the new x,y coordinate in meters from the original lat/long degrees. This calculation and geospatial position taken from a global system using Lat/Longs degrees to your modelspace’s coordinate system that’s using meters is called a Transformation.

 

If you must do design work in 3DSMax, convert or transform all your Lat/Long degrees into MGA grid meters using Civil3D or another program capable of undertaking transformations. Do this first, before doing your 3DSMax design work. Don’t rely on 3DSMax to perform your coordinate transformations. It doesn’t understand Lat/Long geometry. Once transformed, you can move back and forth between C3D and 3DSMax because the units, which are meters, are understood in both programs and this makes exports and imports accurate. 

 

One final note, if you design in 3DSMax you must draw in meters, not mm and not cm. (You must force 3DSMax to adopt, or inherit, the ‘drawing units’ of the MGA grid.) So, when drawing in 3DSMax, 7mm must be entered as 0.007 and 7cm must be entered as 0.07. If you enter 7mm in 3DSMax simply as ‘7’ then it will be 7 meters when exported to Civil3D and not 0.007meters as you originally intended.

Chicagolooper

EESignature

Message 12 of 16

Thank you,

this is a very helpful addition and a good way to visualise how the transforms work between both types of coordinate systems.

N-particle
Message 13 of 16
nano_langenheim
in reply to: jmayo-EE

Thank you - 

I think this is correct. as this allows me to have a fake 'anchor' point. Essentially tricking 3ds Max to think the centre of of the world or the dataum is wherever I would like it to be (3ds Max does not cope well with a large workspace extent). What this makes me wonder though - is: People who are working with a 0,0 in the far distance in Autocad platforms must find this inconvenient for drawing surely. In the case where people are working in a way that requires both reoreferenced file import and run of the mill drafting, they must then need to do all that drafting using a user ucs potentially?

N-particle
Message 14 of 16
nano_langenheim
in reply to: Pointdump

Thank you,

I will look at these - as I think this talks to the other problem I am having with the plugin I am using that allows shape file import into 3ds Max that anchors a given lat long (I think in reference to WGS84) to the 0,0 point in Max. When bringing in a shape file the plugin asks for a map projection - my shape file is already in a projected coordinate system (GDA94 /MGA55) - so as I understand it - I should not need any form of re-projection (This I may need to run past the plugin developer). My options for reprojection are mercartor (+pro), equidisatntcylindrical, mollweide (+pro), galsteriogeographic, lambert, behmann, Gall Peters, Kavraiskiy_7 (+pro), UTM manual (I can enter a UTM zone and central meridian for this one). 

N-particle
Message 15 of 16
nano_langenheim
in reply to: Pointdump

Thank you @Pointdump 

 

This I imagine is likely to be the solution I am after- but I have always been a bit terrified of calculating projections (I'm a self taught GIS user and this can trip me up on fundamentals at times). I will try this out and see if I can get my head around it - but it will take me a while. Thanks again for also providing an example file, much appreciated.

N-particle
Message 16 of 16

Thank you @ChicagoLooper 

I have followed the steps for georeferencing the drawing as you suggest. 3ds Max is, yes, only Cartesian - so this is why I have been bringing shape files into Civil 3D in order to have a file in which the units are meters and the coordinates cartesian.

Where I am having trouble lies within the limitations of 3ds Max to have geometry a great distance from the 0,0 point of the linework. To circumvent this problem I am looking for a way to give my linework a 'false' anchor point. I need to 'pretend' to 3ds Max that the centre of the world is where I anchor it to. So in this case - I know that if I search for -37.7072,144.967 on Google Maps, the specific point (that I wish to be the anchor) will be found. I can add this point to my georeferenced Civil 3d drawing using the 'mark position' tool under georeferencing.

It is the next step that is the headache (for which I am for the moment just making a user UCS and Wblocking out the bits of drawing) - I really would like to to be able to switch between the 'real' position of the datum (the red wheel) and this fake anchor point BUT I would like the fake anchor point to be my primary 'world point as this is where most of my drafting occurs.......

I think to do this @Pointdump has offered a solution ( though it is above my skill level at this point to test it). Or as a work around I can just change to user UCS - I just prefer to draw in world UCS where possible. 

Thank you again for the details - immensely informative and greatly appreciated.

N-particle

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

Post to forums  

Rail Community


Autodesk Design & Make Report