[pdal] Non-English characters
pidgeon13 at googlemail.com
pidgeon13 at googlemail.com
Thu Jan 18 02:57:01 PST 2018
Hi,
I’ve probably messed up my pdal config somewhere then, because this doesn’t work for me. It’s possibly platform related, but I would guess it’s more likely that I’ve done something wrong. Thank you very much for your help, I’ve circumvented the issue by using CopyFile and placing it in a temporary folder.
Best Regards,
Stephen
Sent from Mail for Windows 10
From: Andrew Bell
Sent: 17 January 2018 15:27
To: Stephen Pidgeon; Mateusz Loskot; pdal at lists.osgeo.org
Subject: Re: [pdal] Non-English characters
The following complete program runs properly for me on OSX. I'm referring to the file that you provided earlier.
======
master $ DYLD_LIBRARY_PATH=./lib a.out
View size = 867!
X/Y/Z = 0.00472708/0.0012/-0.000833515!
X/Y/Z = 0.0048/0.0012/0!
X/Y/Z = 0/0/0!
X/Y/Z = 0.00451052/0.0012/-0.0016417!
X/Y/Z = 0.00415692/0.0012/-0.00240001!
X/Y/Z = 0.00367701/0.0012/-0.00308539!
X/Y/Z = 0.00308537/0.0012/-0.00367702!
X/Y/Z = 0.00239999/0.0012/-0.00415693!
X/Y/Z = 0.00164168/0.0012/-0.00451053!
X/Y/Z = 0.000833496/0.0012/-0.00472708!
X/Y/Z = -1.79482e-08/0.0012/-0.0048!
X/Y/Z = -0.00083353/0.0012/-0.00472707!
X/Y/Z = -0.00164172/0.0012/-0.00451052!
X/Y/Z = -0.00240002/0.0012/-0.00415691!
X/Y/Z = -0.0030854/0.0012/-0.003677!
X/Y/Z = -0.00367703/0.0012/-0.00308536!
X/Y/Z = -0.00415694/0.0012/-0.00239997!
X/Y/Z = -0.00451054/0.0012/-0.00164167!
==========
#include <pdal/StageFactory.hpp>
#include <pdal/Options.hpp>
#include <pdal/PointTable.hpp>
#include <pdal/PDALUtils.hpp>
int main()
{
using namespace pdal;
pdal::StageFactory factory;
pdal::PointTable table;
std::string filename(u8"/Users/acbell/Downloads/рфддвбс.ply");
std::string sReaderDriver = pdal::StageFactory::inferReaderDriver(filename);
if (!sReaderDriver.empty())
{
pdal::Stage *pReader = factory.createStage(sReaderDriver);
pdal::Options readerOptions;
readerOptions.add("filename", filename);
if (pReader)
{
pReader->setOptions(readerOptions);
pReader->prepare(table);
PointViewSet s = pReader->execute(table);
PointViewPtr v = *s.begin();
std::cerr << "View size = " << v->size() << "!\n";
for (PointId id = 0; id < v->size(); ++id)
std::cerr << "X/Y/Z = " <<
v->getFieldAs<double>(Dimension::Id::X, id) << "/" <<
v->getFieldAs<double>(Dimension::Id::Y, id) << "/" <<
v->getFieldAs<double>(Dimension::Id::Z, id) << "!\n";
}
}
return 0;
}
On Wed, Jan 17, 2018 at 9:33 AM, <pidgeon13 at googlemail.com> wrote:
The following code is such an example.
int main(
{
pdal::StageFactory factory;
pdal::PointTable table;
std::string sReaderDriver = pdal::StageFactory::inferReaderDriver(u8"C:\\Users\\stephenp\\PDALe\\рфддвбс.ply");
if (!sReaderDriver.empty())
{
pdal::Stage *pReader = factory.createStage(sReaderDriver);
pdal::Options readerOptions;
readerOptions.add("filename", u8"C:\\Users\\stephenp\\PDALe\\рфддвбс.ply");
if (pReader)
{
pReader->setOptions(readerOptions);
pdal::PointViewSet set;
pdal::PointViewPtr pView;
pReader->prepare(table);
set = pReader->execute(table);
pView = *set.begin();
int nSize = pView->size();
std::cerr << Utils::toJSON(pReader->getMetadata());
}
}
return 0;
}
Regards,
Stephen
Sent from Mail for Windows 10
From: Andrew Bell
Sent: 17 January 2018 13:50
To: Stephen Pidgeon
Cc: Mateusz Loskot; pdal at lists.osgeo.org
Subject: Re: [pdal] Non-English characters
I still haven't seen code that shows a UTF-8 string being passed to PDAL as a filename and PDAL failing to handle it. Something like this would help:
void main()
{
LasReader r;
Options ro;
ro.add("filename", "some filename that causes a problem")
PointTable t;
r.prepare(t);
r.execute(t);
std::cerr << Utils::toJSON(r.getMetadata());
}
Does something like this fail? If not, can you provide an example? I can't help unless I understand the problem.
Thanks,
On Wed, Jan 17, 2018 at 5:31 AM, <pidgeon13 at googlemail.com> wrote:
The two methods are producing the same std::string for me. I’m fairly sure that specifying the code page in CW2A overrides using the ANSI codepage.
Regards,
STephen
Sent from Mail for Windows 10
From: Mateusz Loskot
Sent: 17 January 2018 10:21
To: pidgeon13 at googlemail.com
Cc: Andrew Bell; pdal at lists.osgeo.org
Subject: Re: [pdal] Non-English characters
CUtils::toUtf8 looks fine to me
On 17 January 2018 at 11:17, <pidgeon13 at googlemail.com> wrote:
> I have included another piece of code, which is what I tried first using
> WideCharToMultiByte. Should this perform the conversion correctly?
>
>
>
> Regards,
>
>
>
> Stephen
>
>
>
> Sent from Mail for Windows 10
>
>
>
> From: Mateusz Loskot
> Sent: 17 January 2018 10:09
>
>
> To: pidgeon13 at googlemail.com
> Cc: Andrew Bell; pdal at lists.osgeo.org
> Subject: Re: [pdal] Non-English characters
>
>
>
> See what the docs [1] say about the A in CW2A.
>
>
>
> Meanwhile, you need to use WideCharToMultiByte [2] with CP_UTF8 code page.
>
>
>
> [1] https://msdn.microsoft.com/en-us/library/87zae4a3.aspx
>
> [2] https://msdn.microsoft.com/en-us/library/windows/desktop/dd374130.aspx
>
>
>
>
>
> On 17 January 2018 at 11:02, <pidgeon13 at googlemail.com> wrote:
>
>> std::string sFilePath = CW2A(filepath, CP_UTF8);
>
>>
>
>>
>
>>
>
>> Regards,
>
>>
>
>>
>
>>
>
>> Stephen
>
>>
>
>>
>
>>
>
>> Sent from Mail for Windows 10
>
>>
>
>>
>
>>
>
>> From: Mateusz Loskot
>
>> Sent: 17 January 2018 10:00
>
>> To: pidgeon13 at googlemail.com
>
>> Cc: Andrew Bell; pdal at lists.osgeo.org
>
>> Subject: Re: [pdal] Non-English characters
>
>>
>
>>
>
>>
>
>> On 17 January 2018 at 10:31, <pidgeon13 at googlemail.com> wrote:
>
>>
>
>>>
>
>>
>
>>> The user browses for a file in a dialog file browser, and I convert this
>
>>
>
>>> string to UTF-8
>
>>
>
>>
>
>>
>
>> How do you convert to UTF-8?
>
>>
>
>>
>
>>
>
>> Please, you need to show some code (one image for 1000 words).
>
>>
>
>>
>
>>
>
>> Best regards,
>
>>
>
>> --
>
>>
>
>> Mateusz Loskot, http://mateusz.loskot.net
>
>>
>
>>
>
>
>
>
>
>
>
> --
>
> Mateusz Loskot, http://mateusz.loskot.net
>
>
--
Mateusz Loskot, http://mateusz.loskot.net
--
Andrew Bell
andrew.bell.ia at gmail.com
--
Andrew Bell
andrew.bell.ia at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/pdal/attachments/20180118/266d09d2/attachment-0001.html>
More information about the pdal
mailing list