<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: R* Tree Implementation for C++</title>
	<atom:link href="http://www.virtualroadside.com/blog/index.php/2008/10/04/r-tree-implementation-for-cpp/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.virtualroadside.com/blog/index.php/2008/10/04/r-tree-implementation-for-cpp/</link>
	<description></description>
	<lastBuildDate>Mon, 29 Apr 2013 00:11:14 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
	<item>
		<title>By: dustin</title>
		<link>http://www.virtualroadside.com/blog/index.php/2008/10/04/r-tree-implementation-for-cpp/comment-page-1/#comment-130647</link>
		<dc:creator>dustin</dc:creator>
		<pubDate>Wed, 23 Jan 2013 18:34:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.virtualroadside.com/blog/?p=185#comment-130647</guid>
		<description><![CDATA[It&#039;s possible (probable?) there is a bug in my implementation. However, I haven&#039;t really looked at the code in years, and don&#039;t currently have the time to test it.]]></description>
		<content:encoded><![CDATA[<p>It&#8217;s possible (probable?) there is a bug in my implementation. However, I haven&#8217;t really looked at the code in years, and don&#8217;t currently have the time to test it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David McKee</title>
		<link>http://www.virtualroadside.com/blog/index.php/2008/10/04/r-tree-implementation-for-cpp/comment-page-1/#comment-130646</link>
		<dc:creator>David McKee</dc:creator>
		<pubDate>Tue, 15 Jan 2013 20:56:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.virtualroadside.com/blog/?p=185#comment-130646</guid>
		<description><![CDATA[Just to let you know that your implementation here has been grabed for use in LArSoft (a particle physics analysis code being developed for new class of detectors called liquid argon time projection chambers). I did look at libsdbx version because I was not terribly comfortable with the visitor implementation but I found the newer code difficult to extract from it&#039;s context, and the whole library was both more than we needed and not easy to compile in the context of our build system. Several other R* tree from around the internet also failed to meet all of our needs, so you code wins.

We&#039;ve switch to using floating point positions.

We needed a reliable R* Tree for use in a DBSCAN implementation (for which someone had initially provided a O(n) neighbors search) which was running far too slowly, and the code has been serving us well for rather more than a year now.]]></description>
		<content:encoded><![CDATA[<p>Just to let you know that your implementation here has been grabed for use in LArSoft (a particle physics analysis code being developed for new class of detectors called liquid argon time projection chambers). I did look at libsdbx version because I was not terribly comfortable with the visitor implementation but I found the newer code difficult to extract from it&#8217;s context, and the whole library was both more than we needed and not easy to compile in the context of our build system. Several other R* tree from around the internet also failed to meet all of our needs, so you code wins.</p>
<p>We&#8217;ve switch to using floating point positions.</p>
<p>We needed a reliable R* Tree for use in a DBSCAN implementation (for which someone had initially provided a O(n) neighbors search) which was running far too slowly, and the code has been serving us well for rather more than a year now.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: helloworld922</title>
		<link>http://www.virtualroadside.com/blog/index.php/2008/10/04/r-tree-implementation-for-cpp/comment-page-1/#comment-130645</link>
		<dc:creator>helloworld922</dc:creator>
		<pubDate>Tue, 15 Jan 2013 20:46:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.virtualroadside.com/blog/?p=185#comment-130645</guid>
		<description><![CDATA[Hey, I was reading through your implementation of the R* Tree and I noticed that you&#039;re calculating overlap enlargement differently from how the paper defines it. It&#039;s computationally simpler in your implementation, but I can&#039;t find any obvious reasons why the two would result in the same or similar quality trees.

Any feedback on this would be nice. I asked a question over at StackOverflow which goes into a few more details about this discrepancy: http://stackoverflow.com/questions/14346549/r-tree-overlap-computation]]></description>
		<content:encoded><![CDATA[<p>Hey, I was reading through your implementation of the R* Tree and I noticed that you&#8217;re calculating overlap enlargement differently from how the paper defines it. It&#8217;s computationally simpler in your implementation, but I can&#8217;t find any obvious reasons why the two would result in the same or similar quality trees.</p>
<p>Any feedback on this would be nice. I asked a question over at StackOverflow which goes into a few more details about this discrepancy: <a href="http://stackoverflow.com/questions/14346549/r-tree-overlap-computation" rel="nofollow">http://stackoverflow.com/questions/14346549/r-tree-overlap-computation</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: lieutenant7</title>
		<link>http://www.virtualroadside.com/blog/index.php/2008/10/04/r-tree-implementation-for-cpp/comment-page-1/#comment-41517</link>
		<dc:creator>lieutenant7</dc:creator>
		<pubDate>Mon, 19 Apr 2010 15:59:58 +0000</pubDate>
		<guid isPermaLink="false">http://www.virtualroadside.com/blog/?p=185#comment-41517</guid>
		<description><![CDATA[Hello,
I downloaded your code for skyline query algorithm on sliding windows. it really helped me a lot. I found an interesting thing that your program runs much faster in Ubuntu OS(about 5 seconds) than in Windows OS(about 1 min). I guess it is because g++ compiler is more optimize than vs2008&#039;s compiler. 
I have some question about skyline query processing using R* tree, I wonder if you have researched the skyline querys. it would be great help if we can talk about this. 
thank you!]]></description>
		<content:encoded><![CDATA[<p>Hello,<br />
I downloaded your code for skyline query algorithm on sliding windows. it really helped me a lot. I found an interesting thing that your program runs much faster in Ubuntu OS(about 5 seconds) than in Windows OS(about 1 min). I guess it is because g++ compiler is more optimize than vs2008&#8242;s compiler.<br />
I have some question about skyline query processing using R* tree, I wonder if you have researched the skyline querys. it would be great help if we can talk about this.<br />
thank you!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jay</title>
		<link>http://www.virtualroadside.com/blog/index.php/2008/10/04/r-tree-implementation-for-cpp/comment-page-1/#comment-35858</link>
		<dc:creator>Jay</dc:creator>
		<pubDate>Sat, 06 Feb 2010 17:24:40 +0000</pubDate>
		<guid isPermaLink="false">http://www.virtualroadside.com/blog/?p=185#comment-35858</guid>
		<description><![CDATA[Thanks for posting. I&#039;m interested in a geospatial database application and this should be very helpful]]></description>
		<content:encoded><![CDATA[<p>Thanks for posting. I&#8217;m interested in a geospatial database application and this should be very helpful</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dustin</title>
		<link>http://www.virtualroadside.com/blog/index.php/2008/10/04/r-tree-implementation-for-cpp/comment-page-1/#comment-25644</link>
		<dc:creator>dustin</dc:creator>
		<pubDate>Fri, 11 Sep 2009 14:29:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.virtualroadside.com/blog/?p=185#comment-25644</guid>
		<description><![CDATA[For my implementation, I think I decided to not deal with things that were of a dynamic size. The way you would get around this is insert pointers into the tree -- or in a file-based implementation, insert an offset or index number that allows you to find the data in another file, and just use the R* Tree as an index to that file. Of course, then you have to do your own serialization...]]></description>
		<content:encoded><![CDATA[<p>For my implementation, I think I decided to not deal with things that were of a dynamic size. The way you would get around this is insert pointers into the tree &#8212; or in a file-based implementation, insert an offset or index number that allows you to find the data in another file, and just use the R* Tree as an index to that file. Of course, then you have to do your own serialization&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Florent</title>
		<link>http://www.virtualroadside.com/blog/index.php/2008/10/04/r-tree-implementation-for-cpp/comment-page-1/#comment-25627</link>
		<dc:creator>Florent</dc:creator>
		<pubDate>Fri, 11 Sep 2009 09:31:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.virtualroadside.com/blog/?p=185#comment-25627</guid>
		<description><![CDATA[Hi Dustin

I&#039;m trying to insert some data containing a std::vector in the R-tree. It seems I can&#039;t do it since the sdbx library&#039;s serialization concept requires serialized types to have a static type size, through the use of the record_size enum. Is there a workaround?

Thanks
Florent]]></description>
		<content:encoded><![CDATA[<p>Hi Dustin</p>
<p>I&#8217;m trying to insert some data containing a std::vector in the R-tree. It seems I can&#8217;t do it since the sdbx library&#8217;s serialization concept requires serialized types to have a static type size, through the use of the record_size enum. Is there a workaround?</p>
<p>Thanks<br />
Florent</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dustin</title>
		<link>http://www.virtualroadside.com/blog/index.php/2008/10/04/r-tree-implementation-for-cpp/comment-page-1/#comment-20246</link>
		<dc:creator>dustin</dc:creator>
		<pubDate>Thu, 07 May 2009 14:10:24 +0000</pubDate>
		<guid isPermaLink="false">http://www.virtualroadside.com/blog/?p=185#comment-20246</guid>
		<description><![CDATA[The bounding box in the R* Tree in libsdbx is templated, actually. namespaces probably aren&#039;t a bad idea, I&#039;ve never really used them in the past but as I&#039;ve been using boost more and more I&#039;ve been getting used to them. :)

libsdbx currently lives in roadnav SVN: https://roadnav.svn.sourceforge.net/svnroot/roadnav/libsdbx/trunk/ . The R* Tree there has a slightly different design, and supports a disk or memory based storage mechanism (and the disk mechanism is backed by an LRU cache). libsdbx also has a B+ tree in it that shares the same design structure, since an R* tree and a B+ tree are quite similar. Unfortunately, I removed the &#039;remove node&#039; functionality from that version, and replaced the visitor functions with an iterator.

I plan to support this code (well, the code in libsdbx), and hopefully improve it some more once I start contributing to Roadnav again (I&#039;ve taken a small hiatus). For example, someone wrote a more comprehensive unit test for the R* Tree but I haven&#039;t had the time to add that to the libsdbx distribution.

Of course, a problem with a very small part of libsdbx is that it contains some wxwidgets specific code. But, its a rather small portion if I remember correctly (just the file operations).

Dustin]]></description>
		<content:encoded><![CDATA[<p>The bounding box in the R* Tree in libsdbx is templated, actually. namespaces probably aren&#8217;t a bad idea, I&#8217;ve never really used them in the past but as I&#8217;ve been using boost more and more I&#8217;ve been getting used to them. <img src='http://www.virtualroadside.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>libsdbx currently lives in roadnav SVN: <a href="https://roadnav.svn.sourceforge.net/svnroot/roadnav/libsdbx/trunk/" rel="nofollow">https://roadnav.svn.sourceforge.net/svnroot/roadnav/libsdbx/trunk/</a> . The R* Tree there has a slightly different design, and supports a disk or memory based storage mechanism (and the disk mechanism is backed by an LRU cache). libsdbx also has a B+ tree in it that shares the same design structure, since an R* tree and a B+ tree are quite similar. Unfortunately, I removed the &#8216;remove node&#8217; functionality from that version, and replaced the visitor functions with an iterator.</p>
<p>I plan to support this code (well, the code in libsdbx), and hopefully improve it some more once I start contributing to Roadnav again (I&#8217;ve taken a small hiatus). For example, someone wrote a more comprehensive unit test for the R* Tree but I haven&#8217;t had the time to add that to the libsdbx distribution.</p>
<p>Of course, a problem with a very small part of libsdbx is that it contains some wxwidgets specific code. But, its a rather small portion if I remember correctly (just the file operations).</p>
<p>Dustin</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anton</title>
		<link>http://www.virtualroadside.com/blog/index.php/2008/10/04/r-tree-implementation-for-cpp/comment-page-1/#comment-20243</link>
		<dc:creator>Anton</dc:creator>
		<pubDate>Thu, 07 May 2009 12:06:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.virtualroadside.com/blog/?p=185#comment-20243</guid>
		<description><![CDATA[A good candidate to be a part of boost. I would propose to make bounding box templated (now it is hard typed by int) and use namespaces. Design looks pretty good to me. Do you plan to support this code?]]></description>
		<content:encoded><![CDATA[<p>A good candidate to be a part of boost. I would propose to make bounding box templated (now it is hard typed by int) and use namespaces. Design looks pretty good to me. Do you plan to support this code?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: crg</title>
		<link>http://www.virtualroadside.com/blog/index.php/2008/10/04/r-tree-implementation-for-cpp/comment-page-1/#comment-17260</link>
		<dc:creator>crg</dc:creator>
		<pubDate>Mon, 12 Jan 2009 13:41:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.virtualroadside.com/blog/?p=185#comment-17260</guid>
		<description><![CDATA[The blog dropped the template parameters. Some problem with the less than/greater than symbols. Oh well. A preview button would be nice :)

in line 31, change the &quot;3&quot; to &quot;4&quot;. This way, minchild &lt;= maxchild/2 is correct (resolves to 2 &lt;= 2).]]></description>
		<content:encoded><![CDATA[<p>The blog dropped the template parameters. Some problem with the less than/greater than symbols. Oh well. A preview button would be nice <img src='http://www.virtualroadside.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>in line 31, change the &#8220;3&#8243; to &#8220;4&#8243;. This way, minchild &lt;= maxchild/2 is correct (resolves to 2 &lt;= 2).</p>
]]></content:encoded>
	</item>
</channel>
</rss>
