-
Notifications
You must be signed in to change notification settings - Fork 38
Cdm overhaul #965
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: as/vectordatacubes
Are you sure you want to change the base?
Cdm overhaul #965
Conversation
* fix out of bounds line burning * no show * omg
Fix spatial mean bonus section
@rafaqz is this ready to merge into the geometry lookup branch from your end? |
No, heaps more happening. Probably we will merge the other way it's more like "fix all of CF" now |
Yea that works too |
35 CF examples now! - all loading but not all in the optimal way. Rotations are still missing, and I'm not sure how to handle these lookups with a center point and an explicit polygon boundary. With a regular lookup So for this it could do the same thing? and maybe for all geometry lookups? (I'm thinking we might need a DE19M.jl or DE19MPredicates.jl package to hold all of these wrapper types, then we can use them everywhere, like |
I don't know about that....it seems pretty useless, the representative point must be within the geometry at any rate. At least for At. |
That would be nice...but would conflict with GeometryOps operations when we add those. Plus Rasters has Touches which is not DE9IM touches... |
Yeah swapping DD Touches and Contains is where the idea can from. I don't think it will conflict, are there types in GO? We can just use them there too? |
Haha then we can select with geometries omg |
We already can ;)
No but there will be. And they have to subtype One thing we can do is that DE9IMPreds.jl depends on GOCore, and Extents, and actually fills in the Extents.predicate method for these predicates. But then DD depends on GOCore, not sure if we want that. |
Maybe, but I'm not sure what else |
But like, with all the predicates even on a regular raster |
No DE19M is a barebones thing that Extents.jl could depend on. I think GO should just depend on it like DD depends on IntervalSets even though its not a selector. |
The problem there is again the names will clash But I don't mind putting func defs there that we specify can only be overloaded by types that the defining package owns. Then we can put the generic GI definitions in Rasters, but allow Extents to overload for Extents.jl types only. (So no (::Extent, ::Any))` in Extents, for example. My issue is more about the GO end than the DD end to be clear. |
what does that mean? If I say Intersects(geom), then it can only give me either the bbox or a mergedlookup raster, neither of which are particularly nice. How do we specify that the raster should be masked? Maybe a new MaskingIndexSet type? But that breaks the implicit promise of |
I don't get why we need both predicate objects, the idea was to use the same thing rather than clash... In simplest form it's a parameterised wrapper struct with default value of nothing. That can be used for a lot of things. It can have a keyword holding method too like Dimension in DD |
I think we're thinking of two different objects. I'm thinking of the GO Operations interface, i.e. abstract type GeometricPredicate <: Operation end
struct Contains{Alg{M}, Exact, ...} <: GeometricPredicate end
nargs(::Contains) = 2
application_level(::Contains) = GO.TraitTarget{GI.AbstractGeometryTrait}()
function (::Contains)(::GI.PointTrait, p1, ::GI.PointTrait, p2)
end or something like this My understanding is that you are thinking of more of a DD Dimension or Selector like struct? The issue that I have is that I don't know how the Operation interface will turn out - maybe we can make it semi trait based. Or maybe we don't end up doing it at all? It's kind of tricky. |
Beautify ReadMe.. a bit
* fix lazy in create without filename * fix Raster ambiguity
No description provided.