Giter VIP home page Giter VIP logo

Comments (3)

jblindsay avatar jblindsay commented on May 16, 2024

I understand why you would want WhiteboxTools to use GDAL in the backend for raster/vector IO. However, using these bindings would require the user to install GDAL ahead of time. One of the design goals of the WhiteboxTools project is to have a stand-alone executable that does not rely on other libraries, and is therefore very easy for users to install and use. Now this design has certain compromises built into it. One of them is that we will necessarily never support as wide a range of file formats as GDAL does. Another one is that I have to write custom encoders and decoders for each format that we do support. Believe me, I get no joy in writing a GeoTIFF reader/writer and all that know me know my disdain for the seemingly infinite flexibility of the file format. However, unless I'm willing to give up on the idea of a single contained executable, this is what I need to do. Would I rather spend my time writing novel and interesting geospatial analysis tools than writing a reader for the LAS format? You bet I would. Would I rather spend the time completing a vector buffering tool for WhiteboxTools than trying to get the GeoTIFF reader to understand some obscure compression format that a user has all of their data stored in? Yes I would. But until there is a Rust library equivalent to GDAL that would allow me to statically link these capabilities into WhiteboxTools, I'm afraid that I need to go it alone and re-write the functionality. I'm sorry if that's not the reply that you were hoping for. If there is some critical file format, that you think is widely used in the industry and that is relatively open in its description (i.e. a specification exists) then let me know and I can try to incorporate it.

from whitebox-tools.

mccarthyryanc avatar mccarthyryanc commented on May 16, 2024

@jblindsay , completely understand your design decisions. I didn't see any mention of GDAL bindings so I figured I'd just ask. Great set of tools and awesome work with the Rust implementation!

from whitebox-tools.

jblindsay avatar jblindsay commented on May 16, 2024

@mccarthyryanc Yes, I was aware of the Rust bindings to GDAL and had in the inception of the project thought about using them but ultimately decided that the need for a stand-alone application was more inline with the project goals. Anyhow, thank you for raising the issue again. Do consider voicing an opinion if you think that there are vital file formats that are currently unsupported or if you have troubles with reading/writing any of the currently support formats. For example, one user recently reported an issue with reading their GeoTIFF data that led to an important improvement in WhiteboxTools. I wouldn't have been able to make this improvement had they not reported it, so I do value these contributions.

from whitebox-tools.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.