by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Jun 29 2018 12:24
    postspectacular closed #66
  • Jun 29 2018 12:24
    postspectacular commented #66
  • Jun 29 2018 12:19
    vushu commented #66
  • Jun 29 2018 12:15
    postspectacular commented #66
  • Jun 29 2018 09:43
    vushu opened #66
  • Jun 01 2018 23:53
    postspectacular closed #26
  • Jun 01 2018 23:48
    postspectacular demilestoned #6
  • Jun 01 2018 23:46
    postspectacular commented #57
  • Jun 01 2018 23:46
    postspectacular closed #57
  • Jun 01 2018 23:44
    postspectacular closed #64
  • Jun 01 2018 23:44
    postspectacular commented #64
  • Jun 01 2018 23:34
    postspectacular closed #22
  • Jun 01 2018 23:34
    postspectacular commented #22
  • May 31 2018 12:28
    postspectacular closed #12
  • May 31 2018 12:26
    postspectacular closed #38
  • May 31 2018 12:25
    postspectacular closed #62
  • May 31 2018 12:25
    postspectacular commented #62
  • May 31 2018 12:24
    postspectacular closed #23
  • May 31 2018 12:24
    postspectacular commented #23
  • May 31 2018 12:19
    postspectacular commented #47
luxbock
@luxbock
does geom have support stacked bart charts out of the box, or is that something I will have to create own my own from some primitives?
undelete c:
@PlumpMath
hi all happy new year.
I'm geom newbie. I used grasshopper3d (rhino3d) in the past.
I like clojure and emacs.
So for this long time I looked at geom.
But now I'm just trying to use it slowly. :smile:
nice to meet you all. ;;
aranhoide
@aranhoide
how would I create a vertex buffer to render a line strip? I see a thi.ng.geom.types.LineStrip3 in the develop branch which looks promising, but it doesn't implement IMeshConvert, which in all the tutorials/examples I've seen so far is a step involved in rendering
aranhoide
@aranhoide
duh -- if anyone runs into the same issue: it turns out that in the develop branch the linestrip itself can be passed directly to gl/as-gl-buffer-spec, ie., an intermediary step like that of geom/as-mesh isn't necessary
Alex Lynch
@Linchy
:require [thi.ng.geom.gl.core :as gl]
say it can't find it, is this right?
Alex Lynch
@Linchy
meh I just followed these instead, mostly worked: https://github.com/thi-ng/geom/blob/master/geom-webgl/src/demo.org
Alex Lynch
@Linchy
[thi.ng.geom.gl.buffers :as glbuf] not found.....
How do I load a damn texture from file
All the samples say it is in that namespace, ugh
Alex Lynch
@Linchy
using the version from the develop branch fixed the problem
This chat is dead I guess
Daniel Gro├če
@Ninerian
Hello, I have an issue which is less related to thi-ng but have some hopes to get a answer here. :-)
I search for a way to convert projections. From equirectangular to cube map and back. Where should I search to find java/clojure libraries or algorithms to solve this?
Christian Weilbach
@whilo
What is the best way to use the plots directly in cljs? The examples in https://github.com/thi-ng/geom/blob/master/geom-viz/src/index.org are all for clojure. I tried to render the svg, but couldn't get it straight to work.
Jack Rusher
@jackrusher
@whilo The SVG serialization code is CLJ-specific, but the data structure that the svg functions emit can be translated to markup by any hiccup-compatible CLJS library.
Jack Rusher
@jackrusher
@postspectacular Any feelings about pushing a new geom snapshot to clojars? The last one is now about 1.5 years behind the dev branch. :smile: I've been working on a CLJS environment for learners whose ugly SVG code I'd like to replace with something geom-based.
@PlumpMath did you have any success?
Christian Weilbach
@whilo
@jackrusher I have tried that, but it was not working out with hiccups or directly. I can't recall the specifics, but when I retry, I can ping back here.
Jack Rusher
@jackrusher
@whilo Let me know how it goes. I haven't had any trouble generating SVG in CLJS using geom.
dimovich
@dimovich
Hello
thanks for the great libs!
trying now the octrees and having some exceptions come up
using thi.ng/geom "0.0.908"
dimovich
@dimovich
it works if I change g/clear! to t/set-children
(t/set-children tree nil)
Jack Rusher
@jackrusher
@dimovich nice! keep it up!
Alberto
@nkint
Hi. I've seen that in the the.ng main repository there are some recent typescript repo, are there any extended documentation? I would like to contribute! @postspectacular
dimovich
@dimovich
Rewriting some computation-heavy code from ClojureScript to C (through emscripten), gives more than a 10x increase in performance
Karsten Schmidt
@postspectacular
hey everyone - so sorry for the long delays, but having been in a non-clojure fulltime/overtime job since fall '16 meant this project and others have ended up on ice over the past year - unplanned & unintentionally... @nkint has noticed there's been some new typescript projects and yes, help is v.much appreciated and docs for those are coming in due course. same goes for thi.ng/geom, even though I realise that the org-mode format of the sources makes contributing more of a challenge for most people. I can't & won't promise when I get a chance to address any new features or finally test & cut a new release of the dev branch version (0.0.1178-SNAPSHOT), but I'm aware it's much overdue and it is on my TODO list for the weekends in the coming months...
@dimovich pls see my prev msg, 0.0.1178-SNAPSHOT is latest version with many more features (especially GL related)
@dimovich here's some webgl example code: https://github.com/thi-ng/geom/blob/develop/examples/gl/webgl.org
Karsten Schmidt
@postspectacular
@dimovich completely agree about emscripten perf gain - even did a workshop about it. https://hackernoon.com/workshop-report-hi-perf-clojurescript-with-webgl-asm-js-and-emscripten-a545cca083bc
Alberto
@nkint
@postspectacular I think is it super cool, and some of packages like transducers could be really appreciated by javascript community where reactive programming is becoming more and more popular. Anyway I'm working with js, ES6 and ts and I like what ts is introducing to plain js. I would love to contribute even just with some examples or documentation. Do you have a plan on some of the next steps of thi.ng with typescript?
Karsten Schmidt
@postspectacular
@nkint Thanks for offering! Some unit tests (for Mocha, if possible) and code examples would be a great contribution. I didn't spend too many brain cycles yet on how to move forward with those TS projects. I've always seen thi.ng as collection of different, but complementary things - hence also the name. I'm tempted to migrate them to a mono-repository to simplify development, but not considering to build an entire framework (my years in Clojure have turned me off frameworks :) ). Those new transducers & CSP packages are actually largely meant for a reactive programming lib I've been experimenting with over the holidays (not yet on GH). For all three topics there're are already plenty of available options in JS land, but they all seem so hugely overcomplicated to me (e.g. RxJs) and so i've been trying to create way more lightweight & typesafe implementations of those ideas...
@nkint For the transducers, my aim is to add at least another couple of dozen transformers and eventually get rid of the thi.ng/iterators lib. For the reactive toolkit: It's largely meant to bridge the async push-based pipeline processing from CSP with more synchronous dataflow to get the best of both worlds... and instead of implementing 100s of transformers for both CSP & observables, both projects will use the transducers. So for example you can build an FPS counter like this:
Karsten Schmidt
@postspectacular
// composed transducer
const avgFPS = comp(
    benchmark(),
    movingAverage(60),
    map(x => Math.round(1000 / x))
);

// subscribe to & transform stream of requestAnimationFrame() events
fromRAF().transform(avgFPS).subscribe((x) => stats.innerHTML = x + "fps")
Karsten Schmidt
@postspectacular
@nkint so another contribution idea for ya: come up with more high-level, general purpose, configurable transducers, e.g. just compositions like the above example. E.g. the movingAverage() transducer can also be v. useful for charting purposes (e.g. trading charts) and there's a whole bunch of other related ideas in the thi.ng/indicators repo which are waiting to be refactored as transducers (currently implemented as iterators/generators)
@nkint and movingAverage is currently just:
function movingAverage(n: number): Transducer<number, number> {
    return comp(partition(n, 1, true), map((x) => reduce(mean(), x)));
}
Karsten Schmidt
@postspectacular
@nkint another more complex example (will be part of 0.9.0)
function hexDump(cols = 16, addr = 0): Transducer<number, string> {
    return comp(
        padLast(cols, 0),
        map(juxt(hex(2), (x) => x > 31 && x < 128 ? String.fromCharCode(x) : ".")),
        partition(cols, true),
        map(
            juxt(
                (x) => x.map(y => y[0]).join(" "),
                (x) => x.map(y => y[1]).join("")
            )
        ),
        mapIndexed((i, [h, a]) => `${hex(8)(addr + i * cols)} | ${h} | ${a}`)
    );
}

[...iterator(hexDump(8), [65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 33, 48, 49, 50, 51, 126, 122, 121, 120])]
// [ '00000000 | 41 42 43 44 45 46 47 48 | ABCDEFGH',
//   '00000008 | 49 4a 21 30 31 32 33 7e | IJ!0123~',
//   '00000010 | 7a 79 78 00 00 00 00 00 | zyx.....' ]
Adam Moore
@minikomi
I'd love to see a new, updated version of geom make it into the wild. I still think that live coding w/ clojurescript aimed at the browser is an awesome way to explore/learn 3d.
Dwayne Jones
@Dwaynekj
Hey @postspectacular I wanted to ask. I see you have been fleshing out ideas in UI. As for Geom and the related Clojure libs do you feel they are feature complete, do you plan on returning to them? Do you have open issues/features you would like folks to contibute?
Karsten Schmidt
@postspectacular
/hi all - for those still interested, can we please move over to discord where i've set up new channels and promise to be more often around again? i'll be in transit over the next 2 days, but check in as often as i can. please use this invite: https://discord.gg/JhYcmBw
Karsten Schmidt
@postspectacular
@Dwaynekj the clojure libs as stable as they currently are, not perfect, but also not with obvious bugs. what's missing is a large chunk of time to turn the latest geom dev branch snapshot version (280 commits ahead of master) in to an actual release and then an even larger undertaking to find some willing people converting the project structure to be more contribution friendly (i.e. not require org-mode). it kinda hurts to admit that socially the org-mode setup has hindered & damaged the project and its momentum, but as always: "worse is better". if you're interested let's discuss it in the new space
Dwayne Jones
@Dwaynekj
Ok. Switched over