[initial import coreyoconnor@gmail.com**20080525061245] [Removing build artifacts coreyoconnor@gmail.com**20080525062023] [organizing coreyoconnor@gmail.com**20080525063032] [Adding initial Haskell translation of generate O'Caml module coreyoconnor@gmail.com**20080525083337] [More work on the Haskell conversion coreyoconnor@gmail.com**20080526022955] [Replaced stub generate_outer with actual implementation coreyoconnor@gmail.com**20080526024625] [Added place and seperation implementations coreyoconnor@gmail.com**20080526030959] [Filled out findIntersections coreyoconnor@gmail.com**20080526210706] [Filled out intersectsEnv coreyoconnor@gmail.com**20080526211103] [Works but the randomness seams sucky coreyoconnor@gmail.com**20080526222820] [Bah. Tried using the POSIX prng with no luck. Bug is elsewhere. coreyoconnor@gmail.com**20080527005849] [Adding simple GLUT/OpenGL render for the egraphs output by Generate.lhs coreyoconnor@gmail.com**20081128211934] [Simplifying parser coreyoconnor@gmail.com**20081129081011] [Removing reference to openssl (?) random/srandomdev and just using standard haskell version coreyoconnor@gmail.com**20081130033413] [Partitioning the render loop out for direct calls from Generate coreyoconnor@gmail.com**20081130033746] [These both should not be called Main coreyoconnor@gmail.com**20081130033821] [Moved Element into Render and removed Render.Rect coreyoconnor@gmail.com**20081130034734] [The module name must be Main for GHC to link it to a program with --make coreyoconnor@gmail.com**20081130035833] [Generate now just feeds directly into Render coreyoconnor@gmail.com**20081130035902] [tweaking the implementation while searching for poor randomness bug coreyoconnor@gmail.com**20081130075746] [Ugh. I have no idea! I presume it is some aspect of separation but beyond that it's a mystery. coreyoconnor@gmail.com**20081130222100] [Adding new attempt at Generate coreyoconnor@gmail.com**20081130222403] [Starting out Generate2 from scratch coreyoconnor@gmail.com**20081130222648] [Always archive the generated graphic coreyoconnor@gmail.com**20081130224757] [Adding file to execute a specified test coreyoconnor@gmail.com**20081201012555] [Changing Element to be a tuple of Doubles coreyoconnor@gmail.com**20081201012751] [Starting with just defining regions in the scene coreyoconnor@gmail.com**20081201013937] [Generating the seeds for the boxes coreyoconnor@gmail.com**20081201014742] [Working on making the regions non-intersecting coreyoconnor@gmail.com**20081201022432] [Now generates non-intersecting regions coreyoconnor@gmail.com**20081201022922] [Using the Data.List.any equation to simplify things coreyoconnor@gmail.com**20081201033010] [Using the Math.Geometry from Game for vector math coreyoconnor@gmail.com**20081201061427] [Starting main generation loop. Uses the StateT monad. coreyoconnor@gmail.com**20081201063831] [Simplifying coreyoconnor@gmail.com**20081201064033] [Adding basic child element generation coreyoconnor@gmail.com**20081201071910] [Randomly place the *center* not the corner of the child element in order to not bias the upper left of the seed element coreyoconnor@gmail.com**20081201083145] [Start of defining the seperation deltas. coreyoconnor@gmail.com**20081201083219] [Adding the rest of the seperation deltas coreyoconnor@gmail.com**20081201085357] [Stubbing the recursive seperation code out coreyoconnor@gmail.com**20081201090238] [Completed the implementation of Element intersection testing coreyoconnor@gmail.com**20081202035253] [Generates 1000 child boxes jus to make things interesting coreyoconnor@gmail.com**20081202040006] [The previous Element intersection test was incorrect. Start of implementing a correct solution. coreyoconnor@gmail.com**20081202042517] [Pulled in the rest of the line intersection equations from who knows where coreyoconnor@gmail.com**20081202043841] [Fixed element intersection test? Doesn't seem like it.. coreyoconnor@gmail.com**20081202044707] [Tweaking number of child elements generated coreyoconnor@gmail.com**20081202045812] [Adding basic color modulation coreyoconnor@gmail.com**20081204081806] [Adding a profiling "target" to test script coreyoconnor@gmail.com**20081204081822] [Converted to use vector-space coreyoconnor@gmail.com**20081205063217] [Tweaks for profiling coreyoconnor@gmail.com**20081205073351] [Start of module to play with a specific result coreyoconnor@gmail.com**20081206121708] [Adding start of Data.QuadTree coreyoconnor@gmail.com**20081206121747] [Trying to write flickr script to download the photos I'd like to use coreyoconnor@gmail.com**20081206121802] [Quad selection in the quadtree coreyoconnor@gmail.com**20081206123813] [Adding an Intersectable constrain to the QuadTree and it's element type. Not sure if it has any effect coreyoconnor@gmail.com**20081206124544] [Making the boundary of the quadtree explicit coreyoconnor@gmail.com**20081207030255] [Moving calculating the edges that define the boundary into HasBoundary coreyoconnor@gmail.com**20081207030910] [Adding default implementation of boundary square coreyoconnor@gmail.com**20081207032057] [The class should contain the more generic boundary_extents. boundary_square is an aux equation coreyoconnor@gmail.com**20081207032255] [Adding boundary/point intersects coreyoconnor@gmail.com**20081207033008] [completed implementation of quadrant_bounds coreyoconnor@gmail.com**20081208000655] [Initial implementation of insert_child. Non-optimal space packing coreyoconnor@gmail.com**20081208003716] [Simplified insert_child. Also resolved the inefficient packing that could result with the previous version coreyoconnor@gmail.com**20081208004906] [The start of insert_as_parent. Comments on search coreyoconnor@gmail.com**20081208031015] [Adding equation to define the number of levels that need to be added above the node coreyoconnor@gmail.com**20081208031758] [Adding equation to calculate the boundary for the epl_0 quadrant coreyoconnor@gmail.com**20081208034542] [A Boundary structure clearly satisfies HasBoundary coreyoconnor@gmail.com**20081208034915] [Minor editrs coreyoconnor@gmail.com**20081208060404] [Finished equation to calculate the level the new element must be inserted at. coreyoconnor@gmail.com**20081208064442] [Renaming enclosing_parent_quadrant to min_enclosing_quadrant since the calculated quadrant is not assured to be a parent quadrant coreyoconnor@gmail.com**20081208064646] [Outlining process for insert_as_parent coreyoconnor@gmail.com**20081208065907] [Adding equation to calculate union of two boundaries coreyoconnor@gmail.com**20081208071400] [Generalizing nearest_quadrant_at_level and min_quadrant_enclosi coreyoconnor@gmail.com**20081208072933] [More work on insert_as_parent. Each node in the tree storing it's own bounds is complicating things coreyoconnor@gmail.com**20081210051436] [Protecting against infinite recursion on union_child level < 0 coreyoconnor@gmail.com**20081210051748] [Finishing insert_as_parent. result = union (union q_u q) q_e coreyoconnor@gmail.com**20081210053134] [Simplification coreyoconnor@gmail.com**20081210053309] [A QuadTree Boundary is useful for debugging coreyoconnor@gmail.com**20081210053317] [Correcting the use of Intersectable to not infinitely loop coreyoconnor@gmail.com**20081210054128] [Adding Boundary/Boundary and dependent intersection tests. (Which were moved from Generate2) coreyoconnor@gmail.com**20081210054715] [Fixing Boundary/Vertex2 intersection test. The other Boundary tests are incorrect coreyoconnor@gmail.com**20081210085124] [Fixing the rest of the Boundary intersection tests. The exclusive max extent should now be enforced. coreyoconnor@gmail.com**20081210091040] [The insert equations should follow the style of Data.Map and take the QuadTree last coreyoconnor@gmail.com**20081211054157] [Adding test for QuadTreeVisualize coreyoconnor@gmail.com**20081211054536] [Adding QuadTreeVisualize coreyoconnor@gmail.com**20081211054545] [Initial version of QuadTreeVisualize works. Definitely shows the problems with the current implementation. coreyoconnor@gmail.com**20081211062330] [Adding code that was used to generate the color "quadtree problems NN" images coreyoconnor@gmail.com**20081211064828] [Retaining quadtree implementation used to generate "quadtree problems NN" coreyoconnor@gmail.com**20081211065229] [insert_child now adds the element to the smallest possible quadrant coreyoconnor@gmail.com**20081212061125] [My closed form solution was entirely incorrect. coreyoconnor@gmail.com**20081212065746] [min_quadrant_enclosing was testing for intersection not enclosure. coreyoconnor@gmail.com**20081212071836] [Revisiting insert_as_parent as a BFS search of the graph of all possible parents. Looks A LOT simpler now. coreyoconnor@gmail.com**20081214032831] [The new algorithm appears to work! And really is A LOT simpler! coreyoconnor@gmail.com**20081214034003] [Factoring out the various ways I want to visualize a quadtree coreyoconnor@gmail.com**20081214034828] [removing debuggin code coreyoconnor@gmail.com**20081214034847] [Added a Mondarain (sp) display of quadtrees coreyoconnor@gmail.com**20081214035312] [Corrected spelling of Piet Mondrian coreyoconnor@gmail.com**20081214035904] [Trying another rendering style closer to the canonical Mondrian coreyoconnor@gmail.com**20081214080828] [Trying a rendering mode where edges of a quadtree node have a chance of being drawn coreyoconnor@gmail.com**20081214084858] [Tweaking the probability of the fills and line segments coreyoconnor@gmail.com**20081214085254] [Start of rendering to FBO coreyoconnor@gmail.com**20081215084901] [More work on viewing rendering via texture coreyoconnor@gmail.com**20081215085434] [Work on rendering via FBO coreyoconnor@gmail.com**20081215091507] [Now renders to a large texture via an FBO coreyoconnor@gmail.com**20081216055046] [Separating out box separation specific aspects. coreyoconnor@gmail.com**20081216080541] [Moving more to just BoxSeparation coreyoconnor@gmail.com**20081216092215] [Creating a viewer object that manages the state of rasterizing and viewing a given rendering coreyoconnor@gmail.com**20081216092229] [Start of adding a viewing offset to it all coreyoconnor@gmail.com**20081216094359] [Can now navigate around the image. coreyoconnor@gmail.com**20081216094930] [Adding ability to change scale while viewing coreyoconnor@gmail.com**20081216095813] [moving the viewing position should move the same number of rasterized pixels regardless of zoom coreyoconnor@gmail.com**20081216100009] [Zooming should always be relative to the center coreyoconnor@gmail.com**20081216100247] [output is now double buffered. coreyoconnor@gmail.com**20081221024638] [Generate2 now uses the new_viewer/view_rendering display method coreyoconnor@gmail.com**20081221033835]