Pages

Thursday, 2 August 2018

JTS 1.15.1 and XYZM development

One of the things I have been working on with the LocationTech crew is the JTS Topology Suite project with a recent release of JTS 1.15.1 and looking into XYZM coordinate support.

JTS logo


JTS 1.15.1 upgrades for everyone

We have had an exciting couple of months with Jim Hughes and myself taking a code-sprint to:

JTS XYZM coordinates

The other bit of RnD I have been working has been Explicit support for XYZM coordinates. Previously this has been left as an exercise for the reader, designed for in the API but something for downstream applications to figure out. The motivation to address this in JTS is to support a WKTReader / WKT Writer enhancements Felix Obermaier has been working on, but now that it has started a wide range of projects have expressed interest.

Coordinate

The design trade off is between treating JTS Coordinate as a data object, managed in arrays and created and deleted as required. JTS itself only makes use of coordinate.x and coordinate.y fields (which are public as befitting a data structure).

Here is what adding XYZM support looks like for Coordinate:




Methods have beed added for getX(), getY(), getZ() and getM() - and the methods return NaN for anything they do not support.

CoordinateSequence

The cloud projects at LocationTech, such as GeoMesa, run into a bit of trouble with this approach as creating and deleting Coordinate constantly during processing causes a lot of memory pressure.

The alternative provided by JTS is to manage information as a CoordinateSequence, such as Packed CoordinateSequence which is backed by an array of doubles. There is lots of room for JTS to improve in this area and we have watched downstream projects come up with all kinds of fascinating CoordinateSequence implementations we can learn from.

Here is what adding XYZM support looks like for CoordinateSequence:




The key addition here is clarifying the definition of dimension (the number of ordinates in each coordinate) and adding measures (the number of measures included in dimension for each coordinate). For for XY data dimension is 2 and measures is 0. For XYZM data dimension is 4 and measures is 1.

JTS Topology Suite at FOSS4G 2018

If you are interested in hearing more about JTS Topology Suite join Rob Emanuele and myself at FOSS4G 2018 later this month for State of JTS 2018

30 comments:

Aruna Ram said...

Wonderful ideas! You are providing the different kinds of content is very useful for me and I gain more details from your article. I am always following your blog and keep posting...
Spark Training in Chennai
Spark Training
Embedded System Course Chennai
Linux Training in Chennai
Social Media Marketing Courses in Chennai
Power BI Training in Chennai
Tableau Training in Chennai
Oracle DBA Training in Chennai

yuvarani said...

Great info. The content you wrote is very interesting to read. This will loved by all age groups.
ReactJS Training in Chennai
ReactJS Training
ReactJS course
ccna Training in Chennai
Salesforce Training in Chennai
Angularjs Training in Chennai

ProPlus Logics said...

Hey Nice Blog!! Thanks For Sharing!!!Wonderful blog & good post.Its really helpful for me, waiting for a more new post. Keep Blogging!
SEO company in coimbatore
Digital Marketing Company in Coimbatore
SEO Services in coimbatore

Vicky Ram said...

Great articles, first of all Thanks for writing such lovely Post!

Guest posting sites
Technology

jenifer irene said...

This is really a valuable post... The info shared is helpful and valuable. Thank you for sharing.
Aviation Academy in Chennai
Air hostess training in Chennai
Airport management courses in Chennai
Ground staff training in Chennai
aviation training in Chennai
air hostess academy in Chennai
Airline Courses in Chennai
Ground staff training in Chennai

Prakash said...

Awesome Post!!! Thanks for sharing this great post with us.
JAVA Training in Chennai
java class
Best JAVA Training in Chennai
JAVA Training in Tnagar
java training in Thiruvanmiyur
Big data training in chennai
Software testing training in chennai
Android Training in Chennai
Selenium Training in Chennai
Python Training in Chennai

Banu Ravi said...

Awesome blog with lots of information. It is really helpful for all.
AngularJS Training in Chennai
AngularJS course in Chennai
Angular 6 Training in Chennai
ReactJS Training in Chennai
PHP Training in Chennai
Web Designing course in Chennai
Tally course in Chennai
AngularJS Training in Velachery
AngularJS Training in T Nagar
AngularJS Training in OMR

Riya Raj said...

Good blog!!! It is more impressive... thanks for sharing with us...
Selenium Training in Chennai
Selenium Course in Chennai
selenium course
Selenium Training Institute in Chennai
Selenium training in Guindy
Selenium Training in Tambaram
Python Training in Chennai
Big data training in chennai
SEO training in chennai
JAVA Training in Chennai

james john said...

I think this is an informative post and it is very useful and knowledgeable. therefore, I would like to thank you for the efforts you have made in writing this article.
website designing company pakistan

halototo said...

Kasus Pencabulan
Dukun Cabuli Anak SMA
Pengetahuan Wanita
Kata Janda
Prediksi Janda
Janda Slots
menang selalu
redaksi halo
halototo
http://halototo.online
daftar halototo
daftar togel online
daftar togel
halototo wap
togelhkid
http://togelhkid.net
togel hongkong

Shawn David said...

Since working with a graphic design services company, I am sure that such maps making will be much helpful for me to do things well for my website and make it more interesting.

halototo said...

Kasus Pencabulan
Pengetahuan Wanita
poker online
Prediksi Janda
Janda Slots
menang selalu
redaksi halo
halototo
http://halototo.online
kapaldomino
papadomino
daftar togel
halototo wap
dominohalo
http://dominohalo.space
daftar dominohalo

Reshma said...

The blog is very informative.Keep posting like this.
Best training institute in chennai

Vijayakash said...

Excellent blog with lots of information. I have to thank for this. Do share more.

German Classes In Bangalore

Vale Co Xenia said...

Great Article
B.Tech Final Year Projects for CSE in Angular


Angular Training in Chennai


Project Centers in Chennai


JavaScript Training in Chennai

Riya Raj said...

The blog which you have posted is more impressive... thanks for sharing with us...
Selenium Training in Chennai
Selenium Training
selenium testing course in chennai
Best selenium Training Institute in Chennai
Selenium training in vadapalani
Selenium training in porur
Python Training in Chennai
Hadoop Training in Chennai
Big data training in chennai
JAVA Training in Chennai

Insight Communication & Design said...

Outstanding in addition to effective suggestion by the author of this blog are genuinely sensible to me. Web Designs Perth

PTA.in said...

it's very interesting, Thanks for sharing a piece of valuable information to us & Knowledgeable also, keep on sharing like this.
Best Aviation Training Institute in Chennai

codeaze said...

We can easily redesign your existing website making it up to the calibre of your brand so that you can easily retain your customers; climbing the top position. codeaze

Selvin said...

I really appreciate the work you have done, you explained everything in such an amazing and simple way.

Data Science course in marathahalli
Apache spark training in Marathahalli

priya said...

HAVE A NICE WORK!
PHP training in chennai
PHP mysql course in chenni
PHP training institution chennai
PHP developer training institution chennai

Nannie Co Pam said...

Great Article. Thank you for sharing! Really an awesome post for every one.

IEEE Final Year projects Project Centers in Chennai are consistently sought after. Final Year Students Projects take a shot at them to improve their aptitudes, while specialists like the enjoyment in interfering with innovation. For experts, it's an alternate ball game through and through. Smaller than expected IEEE Final Year project centers ground for all fragments of CSE & IT engineers hoping to assemble. Final Year Project Domains for IT It gives you tips and rules that is progressively critical to consider while choosing any final year project point.

Spring Framework has already made serious inroads as an integrated technology stack for building user-facing applications. Spring Framework Corporate TRaining the authors explore the idea of using Java in Big Data platforms.
Specifically, Spring Framework provides various tasks are geared around preparing data for further analysis and visualization. Spring Training in Chennai

Rahasia Menang Judi said...

Layar21
nonton sub indo
poker online
ria4d
delimapoker
delimaqq
halototo
http://halototo.online
kapaldomino
papadomino
daftar togel
halototo wap
dominohalo
http://dominohalo.space
daftar dominohalo

monu said...

Thank you for excellent article.Great information for new guy like antimalware service executable

sindhuvarun said...

Learned a lot of new things in this post. This post gives a piece of excellent information.
PHP Training in Chennai
PHP Training in Bangalore
PHP Training in Coimbatore
PHP Course in Madurai
AWS Training in Bangalore
Data Science Courses in Bangalore
PHP Course in Chennai
PHP Course in Bangalore
PHP Training in Coimbatore
PHP Training in Madurai

Prawalika said...

Awesome..I read this post so nice and very informative information...thanks for sharing
Data Science Training in Hyderabad
Data Science course in Hyderabad
Data Science coaching in Hyderabad
Data Science Training institute in Hyderabad
Data Science institute in Hyderabad

Komal said...

very informative article post. much thanks again
Data Science Training in Hyderabad
Data Science course in Hyderabad
Data Science coaching in Hyderabad
Data Science Training institute in Hyderabad
Data Science institute in Hyderabad

Reshma said...


Wonderful blog. It is really informative to all.keep update more information about this
Ethical Hacking Course in Chennai
Hacking Course in Chennai
Ethical hacking course in bangalore
Ethical hacking course in coimbatore
Ethical Hacking Training in Chennai
Certified Ethical Hacking Course in Chennai
Ethical Hacking Training Institute in Chennai
Ethical hacking Training institute in bangalore
Software Testing Training in Chennai
ielts coaching centre in coimbatore

lokesh said...

Your article is very informative. Thanks for sharing the valuable information.
PHP Training in Chennai
PHP Training in Bangalore
PHP Training in Coimbatore
PHP Course in Madurai
AWS Training in Bangalore
Data Science Courses in Bangalore
PHP Course in Chennai
PHP Course in Bangalore
PHP Training in Coimbatore
PHP Training in Madurai

Dharshana said...

I have gone through your blog, it was very much useful for me and because of your blog, and also I gained many unknown information, the way you have clearly explained is really fantastic. Kindly post more like this, Thank You. Aviation academy in chennai