#jogamp @ irc.freenode.net - 20141226 05:05:02 (UTC)


20141226 05:05:02 -jogamp- Previous @ http://jogamp.org/log/irc/jogamp_20141225050502.html
20141226 05:05:02 -jogamp- This channel is logged @ http://jogamp.org/log/irc/jogamp_20141226050502.html
20141226 10:23:14 * Eclesia (~eclesia@anon) has joined #jogamp
20141226 10:35:06 <Eclesia> good morning
20141226 14:28:20 <Eclesia> nobody ?
20141226 14:40:53 <rmk0> lo
20141226 14:44:00 <rmk0> Eclesia: http://jogamp.org/wiki/index.php/Maintainer_and_Contacts#Mark_Raynsford
20141226 14:44:29 <Eclesia> rmk0: o/
20141226 14:44:31 <Eclesia> thanks
20141226 14:45:41 <Eclesia> rmk0: question on jspatial : why do you use integers vectors for quadrant/tree limits ?
20141226 14:45:53 <Eclesia> (bounding boxes)
20141226 14:46:22 <rmk0> the edges of cells are expected to fall on integer boundaries
20141226 14:47:05 <rmk0> the algorithm doesn't really depend on it, but it seemed easier to show correctness doing that
20141226 14:47:32 <Eclesia> k
20141226 14:48:15 <rmk0> i should mention that the coordinates of cells aren't in any particular coordinate space
20141226 14:48:29 <Eclesia> cartesian at least
20141226 14:48:51 <rmk0> it might be that you used one octree to partition your "world", and then used one octree per mesh if you were going to do per-polygon collision detection
20141226 14:49:06 <rmk0> obviously the coordinate spaces of the two trees wouldn't be remotely compatible
20141226 14:49:52 <rmk0> er, the coordinates of the world octree and the coordinates of the per-object trees
20141226 14:51:34 <rmk0> i did have someone else ask for floating point coordinates
20141226 14:51:47 <rmk0> didn't get around to finishing it, it might be worth adding later
20141226 14:51:54 <Eclesia> no worries, I'm used to play with coordinate systems
20141226 14:53:51 <Eclesia> rmk0: do you mind if I merge the jspatial commit history in the project ?
20141226 14:54:08 <rmk0> i don't mind
20141226 14:54:26 <rmk0> you using the fossil->git export thing?
20141226 14:54:39 <Eclesia> fossil->git->hg
20141226 14:54:43 <rmk0> ow
20141226 14:54:55 <rmk0> well.. hope it works /o\
20141226 14:55:03 <Eclesia> already did it :D
20141226 14:55:25 <rmk0> did it preserve the signatures on the commits, by any chance?
20141226 14:55:42 <Eclesia> pgp signature ? I don't think so
20141226 14:56:47 <Eclesia> author, dates, comment, bookmarks, branches were here (before I clean the history tree)
20141226 14:57:57 <rmk0> shame
20141226 14:59:28 * Eclesia is playing a little with blender
20141226 15:00:06 <Eclesia> do you know how to display the camera center ?
20141226 15:01:40 <rmk0> http://waste.io7m.com/2014/12/26/camera.png
20141226 15:01:49 <rmk0> that "composition guides" menu at the bottom right has various things
20141226 15:05:33 <Eclesia> rmk0: sorry, not the object camera. I mean when you rotate the view, it's around a focus point.
20141226 15:06:08 <Eclesia> when you use shift and mouse middle button
20141226 15:06:08 <rmk0> oh, right
20141226 15:06:26 <rmk0> don't know of any way to display that, unfortunately
20141226 15:06:36 <rmk0> blender is a lot of weird and broken abstractions
20141226 15:06:47 <rmk0> i'm not even sure what the "thing" you're looking out of is, because it's not a camera
20141226 15:07:13 <Eclesia> well it's the 'view panel' camera
20141226 15:07:34 <Eclesia> nevermind, thanks anyway
20141226 15:07:55 <rmk0> it's not actually an object that can be referenced though
20141226 15:08:02 <rmk0> is anonymous
20141226 15:08:15 * rmk0 urinates on blender's disastrous data model
20141226 15:10:01 <Eclesia> ^^
20141226 16:01:32 <Eclesia> rmk0: our vectors api are completely opposite.
20141226 16:01:51 <rmk0> \o/
20141226 16:02:09 <Eclesia> you have multiple types, readable/writable Int,float,double, 2D, 3D
20141226 16:02:28 <Eclesia> I have only 2 : Tuple and Vector
20141226 16:04:14 <rmk0> doesn't sound like it'd have enough type safety
20141226 16:05:19 <Eclesia> I've never a use for integer type vectors
20141226 16:05:24 <Eclesia> never seen*
20141226 16:12:53 <rmk0> zubzub: there any good documentation on service providers? i see one very short "official" page as part of the java audio API documentation
20141226 16:17:08 * rmk0 eyes ServiceLoader
20141226 16:22:18 <Eclesia> I use it a lot, what are you looking for ?
20141226 16:22:39 <Eclesia> (ServiceLoader and the older ServiceRegistry)
20141226 16:22:46 <rmk0> more information i suppose... how not to screw it up
20141226 16:22:56 <rmk0> am aware of how it works, what needs to go into a manifest, etc
20141226 16:23:18 <rmk0> usually with java, there's a lot of information you're told, and then the important information you aren't told
20141226 16:23:44 <Eclesia> avoid cycling instancing
20141226 16:24:04 <Eclesia> other then that, It works well
20141226 16:24:06 <rmk0> cycling?
20141226 16:24:13 <Eclesia> cyclic*
20141226 16:24:22 <Eclesia> ^^
20141226 16:24:37 <Eclesia> one service which needs another service
20141226 16:24:45 <rmk0> ah right, and the second service needs the first
20141226 16:25:18 <Eclesia> you don't access ServiceLoader in any constructor, if really needed, then delay it
20141226 16:26:10 <Eclesia> I made something a little smarter in my api to replace ServiceLoader ^^
20141226 16:53:22 * Eclesia rarely seen generic used on exceptions
20141226 16:53:27 <Eclesia> see*
20141226 16:57:46 <rmk0> generic parameters on the exceptions, or generic parameters that specify an exception type as a lower bound?
20141226 16:59:14 <Eclesia> OctTreeTraversalType<Exception>
20141226 16:59:23 <rmk0> oh, right
20141226 16:59:51 <rmk0> the latter, then
20141226 17:01:22 <rmk0> if you have a function f that requires you to pass it a partial function g, and you can't tell f about the type of exceptions g can raise, then the only thing f can do is flatten everything to type Exception or Throwable
20141226 17:01:39 <rmk0> you basically lose type information
20141226 17:12:24 <Eclesia> pfiuuu, 97.33% test cases pass after switching the vector api
20141226 17:13:30 <rmk0> hehe
20141226 17:13:35 <rmk0> what failed?
20141226 17:13:55 <rmk0> as far as i remember, the interaction with the API is pretty minimal
20141226 17:15:15 <Eclesia> expected 1 where it was 1.5
20141226 17:15:32 <Eclesia> also the visit methods which have more results then expected
20141226 17:15:54 <Eclesia> (everything is in double precision now)
20141226 17:16:00 <rmk0> needs more rounding
20141226 17:24:03 <Eclesia> 98.26% ... nearly there ...
20141226 18:08:40 * Eclesia (~eclesia@anon) Quit (Quit: Leaving.)
20141226 18:27:55 * Eclesia (~eclesia@anon) has joined #jogamp
20141226 19:31:36 <zubzub> 17:12 < rmk0> zubzub: there any good documentation on service providers? i see one very short "official" page as part of the java audio API documentation
20141226 19:31:44 <zubzub> no, google should give you enough information
20141226 19:31:52 <zubzub> together with some basic tutorials and trying it out
20141226 19:32:00 <zubzub> it's not really difficult to use either
20141226 19:32:13 <zubzub> also
20141226 19:32:14 <zubzub> https://github.com/google/auto/tree/master/service
20141226 19:33:01 <rmk0> nice, thanks
20141226 19:38:47 <Eclesia> rmk0: just by curiosity, which tool do you use to format code ?
20141226 19:39:00 <rmk0> only eclipse's thing
20141226 19:39:13 <rmk0> the settings are based roughly on the ada style guide
20141226 19:39:38 <Eclesia> ok great, then i will never make the mistake to use it ^^
20141226 19:40:10 <rmk0> assume you object to the way method parameters are laid out?
20141226 19:40:13 <rmk0> most people do
20141226 19:41:03 <Eclesia> sorry, but it's not readable. this one is a really ugly formatting : http://pastebin.com/m2VjUF6K
20141226 19:41:32 <rmk0> not a great example, no
20141226 19:41:38 <rmk0> that's actually a bug in the formatter, i think
20141226 19:42:18 <Eclesia> the annotation on the same line, I've only 1 developer in the last 10years doing this
20141226 19:42:28 <Eclesia> +seen*
20141226 19:42:38 <rmk0> the @SuppressWarnings annotation?
20141226 19:42:43 <Eclesia> all annotations
20141226 19:43:02 <Eclesia> @override etc..
20141226 19:43:27 <rmk0> i've no real preference there
20141226 19:43:52 <rmk0> i'm not about to put @NonNull annotations on their own lines though... in my opinion, they're part of the type
20141226 19:44:59 <Eclesia> I can agree on this special one
20141226 19:45:27 <rmk0> was a massive design mistake to have "null" at all
20141226 19:45:40 <Eclesia> http://pastebin.com/EAQKPAYi
20141226 19:45:44 <rmk0> to be fair, everyone made that mistake at the same time
20141226 19:46:06 <rmk0> ... why's that @Override not indented?
20141226 19:47:26 <Eclesia> it is indented, just the copy/paste who removed it
20141226 19:47:57 <Eclesia> it's just an example of most methods :
20141226 19:48:03 <Eclesia> - annotations on same line
20141226 19:48:12 <Eclesia> - 80chars limit
20141226 19:48:17 <Eclesia> - C style {}
20141226 19:48:31 <Eclesia> - 2space indent
20141226 19:48:55 <rmk0> yawn!
20141226 19:51:29 <Eclesia> 'yawn' is positive or negative ? :D
20141226 19:51:44 <rmk0> i suspect it's completely neutral
20141226 19:52:16 <Eclesia> surprise, shocked ?
20141226 19:52:31 <rmk0> not that i'm aware
20141226 19:59:25 <rmk0> think i agree, will move to putting annotations on their own lines
20141226 19:59:41 <rmk0> at least on method definitions
20141226 20:00:00 <rmk0> rarely have any annotation other than @Override
20141226 20:00:38 <rmk0> jnull is a special case, because i have to explicitly avoid warnings about null in that one method, and don't want to suppress the warnings anywhere else
20141226 20:02:03 <Eclesia> the chars limit of 80, has been pushed to 120 several years ago, need to verify it
20141226 20:03:56 <Eclesia> ha my bad, it's still 80... http://www.oracle.com/technetwork/java/javase/documentation/codeconventions-136091.html#313
20141226 20:05:16 <rmk0> like i said, most of my conventions are taken from the ada style guide
20141226 20:05:44 <rmk0> i don't agree with much of the more recent stuff in the language, but the people involved certainly did a lot of research when it comes to making code auditable and understandable
20141226 20:05:59 <rmk0> one of the design goals was to have a language that could be understood by domain specialists that weren't programmers
20141226 20:06:12 <rmk0> given that the code was intended to be used on missiles, etc
20141226 20:06:57 <rmk0> they came to the conclusion that given the usual font size, humans tended to cope with text that was arranged in roughly 80 columns
20141226 20:07:10 <rmk0> based on the human visual system... field of view, etc
20141226 20:07:31 <rmk0> i don't think they did that research directly, think it came from elsewhere... seems to be a limit that was written in a lot of things
20141226 20:07:51 <rmk0> "In addition, there are human limitations in the width of the field of view for understanding at the level required for reading source code. These limitations correspond roughly to the 70- to 80-column range."
20141226 20:09:08 <rmk0> *written into
20141226 20:11:18 <Eclesia> public interface PartialFunctionType<A extends Object, B extends Object, E extends Throwable> {
20141226 20:11:18 <Eclesia> public B call(A a) throws E;
20141226 20:11:18 <Eclesia> }
20141226 20:11:38 <Eclesia> don't know if lambdas will accept the generic on exception types
20141226 20:12:07 <rmk0> oh well
20141226 20:12:40 <Eclesia> I didn't try, just a though
20141226 20:13:14 <Eclesia> thought*
20141226 20:14:57 * monsieur_max (~maxime@anon) has joined #jogamp
20141226 20:45:30 <Eclesia> bye +++
20141226 20:45:37 * Eclesia (~eclesia@anon) Quit (Quit: Leaving.)
20141226 21:20:27 * monsieur_max (~maxime@anon) Quit (Quit: Leaving.)
20141227 05:05:02 -jogamp- Continue @ http://jogamp.org/log/irc/jogamp_20141227050502.html