Giter VIP home page Giter VIP logo

Comments (13)

carrbrpoa avatar carrbrpoa commented on May 14, 2024 1

@blairmacintyre,

We have focused on using three.js or aframe.io for content; it's pretty trivial to show polygons or polylines.

Something like these samples?

from argon.

blairmacintyre avatar blairmacintyre commented on May 14, 2024

Where is the error happening (I know it appears in the console, but what code, or file, or line, or whatever, is causing it)? It's happening when you call the new Cesium.Entity() line?

BTW, not sure what you're thinking of doing with that, but argon.js uses Cesium's math libraries to do geospatial computation, and uses Entity's as frames of reference. If you wanted to use their renderer to actually render that polylineVolume, that would be something you have to do yourself. None of the renderer code, etc., is in there.

from argon.

carrbrpoa avatar carrbrpoa commented on May 14, 2024

Where is the error happening? It's happening when you call the new Cesium.Entity() line?

Yes.

I'm trying to reproduce polylines like that, from geospatial data (array of lat/long), with Argon; not sure if it is possible.

from argon.

blairmacintyre avatar blairmacintyre commented on May 14, 2024

It's not directly and easily possible. Argon is not Cesium: our focus is on exposing AR tech into the web, in a platform independent way that unifies geospatial data with local tracking (Vuforia, right now). We use Cesium's math libraries for geospatial computation, and their Entity's as our frames of reference (although we extend their Entity objects to allow nested hierarchies).

I'm sure you could probably pull in more of their code to use it to render, but you'd have to do all of that yourself. Since most of their stuff is aimed at massive scale rendering that wouldn't make sense from a 1st person perspective, I've never looked at doing it myself.

from argon.

carrbrpoa avatar carrbrpoa commented on May 14, 2024

Thanks for the explanation, @blairmacintyre.

our focus is on exposing AR tech into the web, in a platform independent way that unifies geospatial data with local tracking

That's exactly what I want, but with the ability to show georeferenced complex shapes (like polygons or polylines) in the user's spot.

Maybe Argon is not the right existing tool for that? Or just need some tweaks? :)

from argon.

speigg avatar speigg commented on May 14, 2024

@carrbrpoa I think that what you want to do (use Cesium.js as your renderer) is very doable. Argon is renderer-agnostic, so you can use whatever you like. You'll just have to load Cesium.js separately, and setup the binding to the Cesium camera / scene yourself, which is probably very easy, especially given that argon.js is already based on Cesium.

from argon.

blairmacintyre avatar blairmacintyre commented on May 14, 2024

You may or may not want to "just" use cesium to render those things. We have focused on using three.js or aframe.io for content; it's pretty trivial to show polygons or polylines. It actually might be easy to make something that renders a Cesium entity. Heck, it might be possible to yank parts of the Cesium renderer out (I think it uses three.js under the hood, too?)

from argon.

speigg avatar speigg commented on May 14, 2024

@blairmacintyre very early versions of Cesium, I believe, were based on three.js, but not anymore.

from argon.

speigg avatar speigg commented on May 14, 2024

Anyway, closing this, as it is "by design" that argon.js doesn't do any rendering for you.

from argon.

carrbrpoa avatar carrbrpoa commented on May 14, 2024

@speigg, by the way, I don't know if I'm mixing too much, but how could I associate Cartesian3.fromDegrees or Cartesian3.fromDegreesArray with THREE.CatmullRomCurve3? I imagine I should do that if I want to plot geo data.

from argon.

carrbrpoa avatar carrbrpoa commented on May 14, 2024

(What do you think about a gitter channel?)

from argon.

blairmacintyre avatar blairmacintyre commented on May 14, 2024

@carrbrpoa

Something like these samples?

sure, I think those samples might be a good start; three has plenty of ways of displaying data and content. It depends on what you want your app to look like really.

@speigg, by the way, I don't know if I'm mixing too much, but how could I associate Cartesian3.fromDegrees or Cartesian3.fromDegreesArray with THREE.CatmullRomCurve3? I imagine I should do that if I want to plot geo data.

So what you need to do is convert the entity values from FIXED coordinates (which they are in, as that is what the Cartestian's are in, I think) to local coordinates.

I do not know right now what Argon does if you pass an entity with other than Constant properties to our app.context.getEntityPose method, for example. I suspect we just ignore the polylineVolume values. But, essentially you need to convert those individual positions values to the local coordinates each frame, as we do by calling app.context.getEntityPose on the reference frame entities (like app.context.user). This will give you their values in the local coordinates you'd use to render with THREE.

Easier might be to just create an Entity for each of your geolocations, and use app.context.getEntityPose on each one, each time you render (since the local coordinates can change each frame, just like for Hololens' anchors.) IF you have a bunch of geolocations near each other, you could consider converting them to being relative to one geolocation, so you only need to do the conversion on that one geolocation entity each frame.

from argon.

blairmacintyre avatar blairmacintyre commented on May 14, 2024

(What do you think about a gitter channel?)

We tried it at one point; we use slack now. Go to argonjs.io, and look for the link to get an auto-invite to the ArgonJS slack.

I've also just created a discourse server at community.argonjs.io, to use for these kinds of discussions. I just set this up, haven't linked it with the website yet!

Or you could post to Stack Overflow and use the argon tag, for specific coding questions.

from argon.

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.