[pdal] Write and zip function based on PDAL

ping yang pingyang.whu at gmail.com
Tue Oct 4 22:52:33 EDT 2011


Hi Mike,

I have some questions on how to get the X,Y,Z value from the PDAL, I saw
last time you sent me code like this:

Schema schema = reader.getSchema();

SchemaLayout layout = new SchemaLayout(schema);

PointBuffer data = new PointBuffer(layout, 128);

// get the dimensions (fields) of the point record for the X, Y, and Z
values

int offsetX = schema.getDimensionIndex(Dimension.Field.Field_X,
Dimension.DataType.Int32);

int offsetY = schema.getDimensionIndex(Dimension.Field.Field_Y,
Dimension.DataType.Int32);

int offsetZ = schema.getDimensionIndex(Dimension.Field.Field_Z,
Dimension.DataType.Int32);

Dimension dimensionX = schema.getDimension((uint)offsetX);

Dimension dimensionY = schema.getDimension((uint)offsetY);

Dimension dimensionZ = schema.getDimension((uint)offsetZ);

You were using the Dimension, would you please let me know how can I get the
X,Y,Z value of each point?
Is there a LasPoint structure in the PDAL?
 Is the PointBuffer can be used for loading all the points into memory at
one time?


On Thu, Sep 8, 2011 at 5:28 PM, Michael P. Gerlek <mpg at flaxen.com> wrote:

> Ping:
>
> Grab these two updated DLLs:
>
>  http://dl.dropbox.com/u/17690616/pdal_swig_cpp.dll
>  http://dl.dropbox.com/u/17690616/pdal_swig_cs.dll
>
> and then the below program should work fine.  If you need a more complex
> workflow, just let us know and we'll talk you through it.
>
> -mpg
>
>
>
>
>
>
>        private void Test1()
>        {
>            Console.WriteLine("Starting LasWriter test1");
>
>            {
>                // create the reader
>                Options readerOpts = new Options();
>                Option readerOpt1 = new Option();
>
> readerOpt1.setValue_String("../../test/data/1.2-with-color.las");
>                readerOpt1.setName("filename");
>
>                readerOpts.add(readerOpt1);
>                LasReader reader = new LasReader(readerOpts);
>
>                Options writerOpts = new Options();
>                Option writerOpt1 = new Option();
>                writerOpt1.setValue_String("foo.laz");
>                writerOpt1.setName("filename");
>                writerOpts.add(writerOpt1);
>                LasWriter writer = new LasWriter(reader, writerOpts);
>                writer.initialize();
>
>                writer.setCompressed(true);
>                writer.setDate(0, 0);
>                writer.setPointFormat(PointFormat.PointFormat3);
>                writer.setSystemIdentifier("");
>                writer.setGeneratingSoftware("TerraScan");
>
>                // how many points do we have?
>                ulong numPoints = reader.getNumPoints();
>                Debug.Assert(numPoints == 1065);
>
>                ulong numWritten = writer.write(numPoints);
>                Debug.Assert(numWritten == 1065);
>            }
>
>            Console.WriteLine("checking output...");
>
>            {
>                Options opts = new Options();
>                Option opt = new Option();
>                opt.setValue_String("foo.laz");
>                opt.setName("filename");
>                opts.add(opt);
>
>                LasReader reader = new LasReader(opts);
>                reader.initialize();
>
>                Debug.Assert(reader.isCompressed() == true);
>
>                ulong numPoints = reader.getNumPoints();
>                Debug.Assert(numPoints == 1065);
>            }
>
>            Console.WriteLine("done!");
>
>            return;
>        }
>
>


-- 
Ping Yang, Ph.D.
Postdoctoral Research Associate
Idaho State University-Idaho Falls
yangping at isu.edu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/pdal/attachments/20111004/46e9d2a0/attachment.html


More information about the pdal mailing list