Comments (4)
Comment by hamish on 11 Oct 2008 03:15 UTC
Replying to [ticket:331 mlechner]:
It would be interesting to extend the grass vector model to be
able to construct curves for using them to create real circular
buffers instead of approximating them using several vertices.I just was wondering - isn't it more effectice saving a buffer
using one vertice and a "curved line" than using several points
and approximate the circle.An appproximated buffer could still be in the data - only newly
calculated buffers are more correct then.
Hi,
I remember some years ago seeing a presentation about a similar idea. The talk was entitled The circle tree a hierarchical structure for efficient storage, access and multi-scale representation of spatial data, by Antoni Moore.
http://www.business.otago.ac.nz/SIRC/conferences/2002_SIRC/17_Moore.pdf
(and also another talk at SIRC 2003)
Tony's office is just down the hall, if needed I can ask him where it lead. ISTR they had a prototype and did some efficacy testing.
(or you can just use that as scholar.google search terms for publications...)
perhaps this wish is "easier said than done".
see also the symbol library, which has a hybrid cartesian/polar polyline input method.
Hamish
from grass-gis-git-migration-test.
Comment by glynn on 11 Oct 2008 05:05 UTC
Replying to [ticket:331 mlechner]:
It would be interesting to extend the grass vector model to be
able to construct curves for using them to create real circular
buffers instead of approximating them using several vertices.
Replying to [comment:1 hamish]:
perhaps this wish is "easier said than done".
Very much so. The problem isn't creating or storing curves, but the fact that every vector module would need to be able to handle paths which contain curved segments.
Certain operations are much more complex for curves than for straight line segments, e.g. testing which side of the line a point falls on, calculating the intersection between segments, etc.
It would be possible to provide a mechanism whereby the vector libraries automatically convert a curve to a sequence of straight line segments, with the accuracy determined by either the calling module, a run-time configuration variable, or a default value stored in the map. However, this creates other issues, e.g. the results would differ depending upon the accuracy chosen.
Another option would be to allow lines to be "tagged" with an indication that they represent sampled curves. Individual modules could then (optionally) interpolate the paths to a higher detail level.
Or would could just have a separate module (or an extension to v.split) which subdivides vectors by treating them as sampled curves rather than a sequence of straight lines.
from grass-gis-git-migration-test.
Modified by @landam on 12 May 2016 06:44 UTC
from grass-gis-git-migration-test.
Modified by @landam on 23 Aug 2016 11:41 UTC
from grass-gis-git-migration-test.
Related Issues (20)
- Set size in d.northarrow HOT 9
- Allow image to be saved in Map Display even when there is no map HOT 5
- d.grid: -n flag also disables text drawing HOT 8
- Revise monochromatic color tables HOT 13
- Add New Location action to the Datacatalog
- Add New Location action to the Datacatalog
- Add New Location action to the Datacatalog
- Reorganize po files into subdirectories by <lang>/ to enable transifex push HOT 6
- wingrass: include also unversioned libraries
- wingrass: include also unversioned libraries HOT 8
- wingrass: include also unversioned libraries HOT 8
- wingrass: include also unversioned libraries
- wingrass: include also unversioned libraries
- wingrass: include also unversioned libraries
- wingrass: include also unversioned libraries HOT 16
- wingrass: include also unversioned libraries HOT 6
- wingrass: include also unversioned libraries HOT 11
- wingrass: include also unversioned libraries HOT 6
- wingrass: include also unversioned libraries HOT 5
- wingrass: include also unversioned libraries HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from grass-gis-git-migration-test.