[GraphHopper] How to initialize my own flagEncoder?
John Zhao
johnthu at gmail.com
Thu May 28 19:11:49 UTC 2015
Thanks Peter for your answer.
I mean "combne" is if I have something inside properties like:
graph.flagEncoders=xxxcar|speedFactor=5.0|speedBits=5|turnCosts=true, bike,
mtb, foot
I want to it can be parsed by the program without hard code.
*Best Regards,*
*ZhiQiang ZHAO*
On Thu, May 28, 2015 at 12:01 PM, Peter <graphhopper at gmx.de> wrote:
> Hi,
>
> I'm not sure what you mean with 'combine'. You can mix Java API and read
> from config too e.g. via
>
> graphHopper.init(CmdArgs.readFromConfig(..))
> graphHopper.setEncodingManager(new YourFlagEncoder(), new
> CarFlagEncoder(), ...)
>
> > Could you elaborate a little bit more about the portability reason? I am
> new to reflection.
>
> It is just that we want to support JavaScript (TeaVM) and iOS, and for
> them we need to avoid some stuff.
>
> Kind Regards,
> Peter
>
> On 28.05.2015 20:49, John Zhao wrote:
>
> Hi Peter,
>
> I want to keep the compatibility of combine the existing flagEncoder
> with my customized flagEncoder.
> And intialize them from the properties file.
>
> Could you elaborate a little bit more about the portability reason?
> I am new to reflection.
>
> *Best Regards,*
> *ZhiQiang ZHAO*
>
> On Thu, May 28, 2015 at 11:44 AM, Peter <graphhopper at gmx.de> wrote:
>
>> Hi John,
>>
>> if you have a custom flagencoder why not just call
>> new EncodingManager(new YourFlagEncoder()) ?
>>
>> Reflections was abandoned due to portability reasons but also it is not
>> really necessary here, especially as you use it as a library and you have a
>> custom flag encoder anyway.
>>
>> Regards,
>> Peter
>>
>>
>> On 28.05.2015 20:14, John Zhao wrote:
>>
>> Hi,
>>
>> I have a project which use GH as a library.
>> I have implemented my own flag encoder, like xxxFlagEncoder.
>> I don't figure out a good way to initialize it, except to change the
>> EncodingManger to insert xxxFlagEncoder on parseEncoderString().
>> I think it's better the change the way EncodingManger initialize all the
>> flagEncoders.
>> EncodingManger can use reflection to find the class or flagEncoder from
>> its name, if we standardize the name and toString method.
>>
>> Do you think it's a good idea, or there is a better way?
>>
>>
>
> _______________________________________________
> GraphHopper mailing list
> GraphHopper at openstreetmap.org
> https://lists.openstreetmap.org/listinfo/graphhopper
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/graphhopper/attachments/20150528/312a85de/attachment.html>
More information about the GraphHopper
mailing list