Custom Projection Assistance

65 views
Skip to first unread message

Mark

unread,
May 15, 2024, 8:06:42 AMMay 15
to LAStools - efficient tools for LiDAR processing
Hello,

I'm working on a project that requires data to be provided in a local custom projection with the following parameters:

LINEAR UNIT: U.S. SURVEY FOOT (SFT)
DATUM: NAD83(2011)
PROJECTION: HOTINE_OBLIQUE_MERCATOR_AZIMUTH_NATURAL_ORIGIN
LATITUDE OF ORIGIN: 65°45′00″N
LONGITUDE OF ORIGIN: 149°27′00″W
FALSE NORTHING: -17,900,000 SFT
FALSE EASTING: 20,300,000 SFT
ORIGIN SCALE: 1.000045 (EXACT)
AZIMUTH ANGLE: -47°

My data is currently in a known projection with units set to U.S. Survey Feet. I don't want to modify elevation values.  

I've created a WKT string that successfully performs this reprojection in Qgis.  

I found this post that says lastools supports Hotine Oblique Mercator Projections.

But I can't figure out how to ask Las2Las to reproject my data with these parameters.  Can somebody help me with the command syntax?  I would love to just be able to tell lastools to use my wkt file if possible.

Thank you.

Michael Perdue

unread,
May 15, 2024, 3:20:51 PMMay 15
to last...@googlegroups.com
Hi Mark,

My understanding is that LAStools must be able to look up your coordinate system in the PCS.CSV file that is located in LAStools/bin/serv/geo/pcs.csv. From my observations, it doesn't try to interpret the WKT string. However, there is a bit of a hack that I have used with success in the past and if you were able to roll your own WKT string, you should be able to figure this one out as well.

You can add your own entries into the pcs.csv. Im my case I needed ESRI:102008, but with NAD83(2011) instead of NAD83 original. So I picked an unoccupied EPSG code (32767) and copied the relevant parameters into the entry as such.
32767,North America Albers Equal Area Conic,9001,6318,5068,9822,1,0,4499,8821,40,9102,8822,-96,9102,8823,20,9110,8824,60,9110,8826,0,9001,8827,0,9001,,,,,,,,,,

The hard part is that there is no header in the pcs.csv file, so you will have to do a bit of reverse engineering to figure out what the fields are. I would help, but it was a "one and done" for me and I don't remember what the fields are any more. In my case, I picked an EPSG code that was close to what I wanted (EPSG:6350) and used it as "a known" to reverse the fields I needed. In your case, maybe EPSG:3468?

Then test:
michaelperdue@NeutronWrangler ~
>echo "0 0 0" > foobar.txt

michaelperdue@NeutronWrangler ~
>las2las -i foobar.txt -iparse xyz -epsg 32767 -target_epsg 6344 -stdout -otxt -oparse xyz
243900.35 4432069.06 0.00

From there you will be able to use las2las to reproject the file as needed. But note that the code is bogus and no other software will recognize it. Any TIF files generated by lastools will not have the correct SRS embedded. You can embed the proper WKT string into the file afterwards with las2las -load_ogc_wkt [f].

Mike

PS: Note that you can not choose any value you want for an EPSG code. If I change my home grown 32767 code to 32768...
michaelperdue@NeutronWrangler ~
>las2las -i foobar.txt -iparse xyz -epsg 32768 -target_epsg 6344 -stdout -otxt -oparse xyz
ERROR: '-epsg' needs 1 argument: EPSG code but 32768 is not a valid code


--
Download LAStools at
https://rapidlasso.de
Manage your settings at
https://groups.google.com/g/lastools/membership
---
You received this message because you are subscribed to the Google Groups "LAStools - efficient tools for LiDAR processing" group.
To unsubscribe from this group and stop receiving emails from it, send an email to lastools+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/lastools/70889a83-bc3f-4f00-afa0-2d320cd72e30n%40googlegroups.com.

Mark

unread,
May 16, 2024, 1:53:05 PMMay 16
to LAStools - efficient tools for LiDAR processing
Hi Mike,

Thank you, this did solve my problem. 

I wish I knew what all of the columns stood for in the PCS file as that might make doing these odd projections pretty easy.  It would be great if we had a separate file where we could make our own custom projections.  

I solved it by finding another oblique mercator projection with the same ellipsoid (Alaska Zone 1) and modifying those values.

In the not very distant future the NGS is going to be releasing many new LDP's for every state.  Hopefully projecting into those more modern systems will be straight forward in LAStools.

Thanks,
Mark

Jochen Rapidlasso

unread,
May 16, 2024, 2:05:11 PMMay 16
to LAStools - efficient tools for LiDAR processing
Hi Mark,
we would like to fulfill your wishes here:
This are the columns of the pcv.cvs with some samples (EPSG 3819, 4657, 4314) added.

COORD_REF_SYS_CODE   3819      4657           4314
COORD_REF_SYS_NAME   HD1909    Reykjavik 1900 DHDN
DATUM_CODE           1024      6657           6314
DATUM_NAME           Hungarian_1909 
Reykjavik_1900  Deutsches_Hauptdreiecksnetz
GREENWICH_DATUM      1024      6657           6314
UOM_CODE             9122      9122           9122
ELLIPSOID_CODE       7004      7051           7004
PRIME_MERIDIAN_CODE  8901      8901           8901
SHOW_CRS             1         1              1
DEPRECATED           0         0              0
COORD_SYS_CODE       6422      6422           6422
COORD_OP_CODE        3817      1994           1777
COORD_OP_CODE_MULTI  0         0              1
COORD_OP_METHOD_CODE 9607      9603           9606
DX                   595.48    -28            598.1
DY                   121.69    199            73.7
DZ                   515.35    5              418.2
RX                   -4.115    0.202
RY                   2.9383    0.045
RZ                   -0.853    -2.455
DS                   -3.408    6.7

You can add your own, custom lines.
If those are of public use you can share them and we will put it to the release.
Reference information about the columns you should find at the PROJ documentation.

Best,

Jochen @rapidlasso
Reply all
Reply to author
Forward
0 new messages