Comments (7)
Hello @mkadirtan,
it would be nice to see how you are trying to access the data. When receiving a result from e.g. a KNN search, you need to cast the result to the type that you expect.
res := tree.KNN(...)
p := res[0].(kdtree.Point)
If you can show us a small example of what you are trying to achieve with a playground link, this would also help a lot, e.g. https://play.golang.org/p/CypfXqudn1V
Thanks,
Kyroy
from kdtree.
Hi @kyroy,
Thanks for the quick reply. Here is a demonstration of my problem:
https://play.golang.org/p/TwvZGBsEdWe
from kdtree.
Here is my PR for the fix: #9
from kdtree.
Hi @kyroy,
Thanks for the quick reply. Here is a demonstration of my problem:
https://play.golang.org/p/TwvZGBsEdWe
To keep the library generic, it can only return the interface. Since you put specific data into the tree, you. can cast the interface to the specific type.
I adapted your example: https://play.golang.org/p/tqcAeoPHWaq
from kdtree.
To keep the library generic, it can only return the interface. Since you put specific data into the tree, you. can cast the interface to the specific type.
I adapted your example: https://play.golang.org/p/tqcAeoPHWaq
I get the following error when I try to create an interface around the Data type:
" (type interface {} is interface with no methods) "
Here is the playground: https://play.golang.org/p/2u28X-0UzPf
from kdtree.
Hi @kyroy,
Thanks for the quick reply. Here is a demonstration of my problem:
https://play.golang.org/p/TwvZGBsEdWeTo keep the library generic, it can only return the interface. Since you put specific data into the tree, you. can cast the interface to the specific type.
I adapted your example: https://play.golang.org/p/tqcAeoPHWaq
I understand that you are concerned about keeping the library generic, and I agree with that. However, I think KNN should be returning pointer instead of a new point. Maybe it is my lack of golang.
Anyways, here is a better demonstration: https://play.golang.org/p/cqRh4m5JyQ1
from kdtree.
I understand that you are concerned about keeping the library generic, and I agree with that. However, I think KNN should be returning pointer instead of a new point. Maybe it is my lack of golang.
Anyways, here is a better demonstration: https://play.golang.org/p/cqRh4m5JyQ1
https://play.golang.org/p/Ywl9XnHuvb0
KNN returns the same data that you put into the tree. You can see it in the output that you added:
fmt.Println(reflect.TypeOf(results[0]))
// *main.mypoint
It even returns the same pointer. Your pointer output was creating 2 new pointers and printing these. I fixed it in the updated link.
from kdtree.
Related Issues (6)
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 kdtree.