﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-^^想你-文章分类-计算几何</title><link>http://www.cppblog.com/Huicpc217/category/11558.html</link><description /><language>zh-cn</language><lastBuildDate>Mon, 28 Sep 2009 01:18:11 GMT</lastBuildDate><pubDate>Mon, 28 Sep 2009 01:18:11 GMT</pubDate><ttl>60</ttl><item><title>三维——面旋转</title><link>http://www.cppblog.com/Huicpc217/articles/97017.html</link><dc:creator>Huicpc217</dc:creator><author>Huicpc217</author><pubDate>Wed, 23 Sep 2009 05:11:00 GMT</pubDate><guid>http://www.cppblog.com/Huicpc217/articles/97017.html</guid><wfw:comment>http://www.cppblog.com/Huicpc217/comments/97017.html</wfw:comment><comments>http://www.cppblog.com/Huicpc217/articles/97017.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/Huicpc217/comments/commentRss/97017.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/Huicpc217/services/trackbacks/97017.html</trackback:ping><description><![CDATA[<font color=#0000ff>#include&lt;iostream&gt;<br>#include&lt;math.h&gt;<br><strong>using namespace</strong></font> std<strong><font color=#ff00ff>;</font></strong><strong><font color=blue><br>double</font></strong> pi<strong><font color=#ff00ff> =</font></strong> acos<strong><font color=#ff00ff>( -</font></strong><font color=#cc3300>1.</font><strong><font color=#ff00ff>);</font></strong><font color=green><br><br>// 平面内旋转 , 只要是面旋转都可以用，顺时针 <br></font><strong><font color=blue>int</font></strong> r<strong><font color=#ff00ff>(</font></strong><strong><font color=blue> double</font></strong><strong><font color=#ff00ff> &amp;</font></strong>x<strong><font color=#ff00ff>,</font></strong><strong><font color=blue> double</font></strong><strong><font color=#ff00ff> &amp;</font></strong>y<strong><font color=#ff00ff>,</font></strong><strong><font color=blue> double</font></strong> t<strong><font color=#ff00ff>){</font></strong><strong><font color=blue><br>&nbsp;&nbsp;&nbsp; double</font></strong> x1<strong><font color=#ff00ff> =</font></strong> x<strong><font color=#ff00ff> *</font></strong> cos<strong><font color=#ff00ff>(</font></strong> t<strong><font color=#ff00ff> ) +</font></strong> y<strong><font color=#ff00ff> *</font></strong> sin<strong><font color=#ff00ff>(</font></strong> t<strong><font color=#ff00ff> );</font></strong><strong><font color=blue><br>&nbsp;&nbsp;&nbsp; double</font></strong> y1<strong><font color=#ff00ff> = -</font></strong> x<strong><font color=#ff00ff> *</font></strong> sin<strong><font color=#ff00ff>(</font></strong> t<strong><font color=#ff00ff> ) +</font></strong> y<strong><font color=#ff00ff> *</font></strong> cos<strong><font color=#ff00ff>(</font></strong> t<strong><font color=#ff00ff> );</font></strong><br>&nbsp;&nbsp;&nbsp; x<strong><font color=#ff00ff> =</font></strong> x1<strong><font color=#ff00ff> ;</font></strong> y<strong><font color=#ff00ff> =</font></strong> y1<strong><font color=#ff00ff>;<br>}</font></strong><strong><font color=blue><br><br>int</font></strong><strong><font color=#0000ff> main</font></strong><strong><font color=#ff00ff>()<br>{</font></strong><strong><font color=blue><br>&nbsp;&nbsp;&nbsp; int</font></strong> i<strong><font color=#ff00ff>,</font></strong> j<strong><font color=#ff00ff>,</font></strong> k<strong><font color=#ff00ff>;</font></strong><strong><font color=blue><br>&nbsp;&nbsp;&nbsp; double</font></strong> x<strong><font color=#ff00ff>,</font></strong> y<strong><font color=#ff00ff>,</font></strong> z<strong><font color=#ff00ff>;</font></strong><strong><font color=blue><br>&nbsp;&nbsp;&nbsp; double</font></strong> xn<strong><font color=#ff00ff>,</font></strong> yn<strong><font color=#ff00ff>,</font></strong> zn<strong><font color=#ff00ff>;</font></strong><strong><font color=blue><br>&nbsp;&nbsp;&nbsp; double</font></strong> t<strong><font color=#ff00ff>;</font></strong><strong><font color=#0000ff><br>&nbsp;&nbsp;&nbsp; while</font></strong><strong><font color=#ff00ff> (</font></strong> scanf<strong><font color=#ff00ff>(</font></strong><font color=green>"%lf%lf%lf"</font><strong><font color=#ff00ff>,&amp;</font></strong>x<strong><font color=#ff00ff>,&amp;</font></strong>y<strong><font color=#ff00ff>,&amp;</font></strong>z<strong><font color=#ff00ff>) !=</font></strong> EOF<strong><font color=#ff00ff> )<br>&nbsp;&nbsp;&nbsp; {</font></strong><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; scanf<strong><font color=#ff00ff>(</font></strong><font color=green>"%lf%lf%lf"</font><strong><font color=#ff00ff>,&amp;</font></strong>xn<strong><font color=#ff00ff>,&amp;</font></strong>yn<strong><font color=#ff00ff>,&amp;</font></strong>zn<strong><font color=#ff00ff>);</font></strong><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; scanf<strong><font color=#ff00ff>(</font></strong><font color=green>"%lf"</font><strong><font color=#ff00ff>,&amp;</font></strong>t<strong><font color=#ff00ff>);</font></strong><strong><font color=blue><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; double</font></strong> t1<strong><font color=#ff00ff> =</font></strong> atan2<strong><font color=#ff00ff>(</font></strong> xn<strong><font color=#ff00ff>,</font></strong> yn<strong><font color=#ff00ff> );</font></strong><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r<strong><font color=#ff00ff>(</font></strong> yn<strong><font color=#ff00ff>,</font></strong> xn<strong><font color=#ff00ff>,</font></strong>&nbsp; t1<strong><font color=#ff00ff> );</font></strong><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r<strong><font color=#ff00ff>(</font></strong> y<strong><font color=#ff00ff>,</font></strong> x<strong><font color=#ff00ff>,</font></strong>&nbsp; t1<strong><font color=#ff00ff> );</font></strong><strong><font color=blue><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; double</font></strong> t2<strong><font color=#ff00ff> =</font></strong> pi<strong><font color=#ff00ff> *.</font></strong><font color=#cc3300>5</font><strong><font color=#ff00ff> -</font></strong> atan2<strong><font color=#ff00ff>(</font></strong> zn<strong><font color=#ff00ff>,</font></strong> yn<strong><font color=#ff00ff> );</font></strong><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r<strong><font color=#ff00ff>(</font></strong> yn<strong><font color=#ff00ff>,</font></strong> zn<strong><font color=#ff00ff>, -</font></strong> t2<strong><font color=#ff00ff> );</font></strong><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r<strong><font color=#ff00ff>(</font></strong> y<strong><font color=#ff00ff>,</font></strong> z<strong><font color=#ff00ff>, -</font></strong> t2<strong><font color=#ff00ff> );</font></strong><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r<strong><font color=#ff00ff>(</font></strong> y<strong><font color=#ff00ff>,</font></strong> x<strong><font color=#ff00ff>,</font></strong> t<strong><font color=#ff00ff> );</font></strong><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r<strong><font color=#ff00ff>(</font></strong> y<strong><font color=#ff00ff>,</font></strong> z<strong><font color=#ff00ff>,</font></strong> t2<strong><font color=#ff00ff> );</font></strong><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; r<strong><font color=#ff00ff>(</font></strong> y<strong><font color=#ff00ff>,</font></strong> x<strong><font color=#ff00ff>, -</font></strong> t1<strong><font color=#ff00ff> );</font></strong><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf<strong><font color=#ff00ff>(</font></strong><font color=green>"%.3lf %.3lf %.3lf\n"</font><strong><font color=#ff00ff>,</font></strong>x<strong><font color=#ff00ff>,</font></strong>y<strong><font color=#ff00ff>,</font></strong>z<strong><font color=#ff00ff>);<br>&nbsp;&nbsp;&nbsp; }<br>}</font></strong><br>
<img src ="http://www.cppblog.com/Huicpc217/aggbug/97017.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/Huicpc217/" target="_blank">Huicpc217</a> 2009-09-23 13:11 <a href="http://www.cppblog.com/Huicpc217/articles/97017.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Hoj 11619  Balance 切割多边形</title><link>http://www.cppblog.com/Huicpc217/articles/94690.html</link><dc:creator>Huicpc217</dc:creator><author>Huicpc217</author><pubDate>Fri, 28 Aug 2009 09:59:00 GMT</pubDate><guid>http://www.cppblog.com/Huicpc217/articles/94690.html</guid><wfw:comment>http://www.cppblog.com/Huicpc217/comments/94690.html</wfw:comment><comments>http://www.cppblog.com/Huicpc217/articles/94690.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/Huicpc217/comments/commentRss/94690.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/Huicpc217/services/trackbacks/94690.html</trackback:ping><description><![CDATA[<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;sovle()<br><img id=Codehighlighter1_21_1007_Open_Image onclick="this.style.display='none'; Codehighlighter1_21_1007_Open_Text.style.display='none'; Codehighlighter1_21_1007_Closed_Image.style.display='inline'; Codehighlighter1_21_1007_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_21_1007_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_21_1007_Closed_Text.style.display='none'; Codehighlighter1_21_1007_Open_Image.style.display='inline'; Codehighlighter1_21_1007_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_21_1007_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_21_1007_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">turn_back();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;polygon&nbsp;a,&nbsp;b;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;i,&nbsp;j,&nbsp;k;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;point&nbsp;tmp;&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p[n]&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;p[</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">];<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;point&nbsp;p1(&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;),&nbsp;p2(&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">&nbsp;(&nbsp;i&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;;&nbsp;i&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">&nbsp;n&nbsp;;&nbsp;i&nbsp;</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">&nbsp;)<br><img id=Codehighlighter1_219_642_Open_Image onclick="this.style.display='none'; Codehighlighter1_219_642_Open_Text.style.display='none'; Codehighlighter1_219_642_Closed_Image.style.display='inline'; Codehighlighter1_219_642_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_219_642_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_219_642_Closed_Text.style.display='none'; Codehighlighter1_219_642_Open_Image.style.display='inline'; Codehighlighter1_219_642_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_219_642_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_219_642_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(&nbsp;p[i].y&nbsp;</span><span style="COLOR: #000000">&gt;=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;)<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a.add(&nbsp;p[i]&nbsp;);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(&nbsp;p[i].y&nbsp;</span><span style="COLOR: #000000">&lt;=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;)<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b.add(&nbsp;p[i]&nbsp;);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(&nbsp;sig(&nbsp;p[i].y&nbsp;</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">&nbsp;p[i&nbsp;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">&nbsp;].y&nbsp;)&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;)<br><img id=Codehighlighter1_407_632_Open_Image onclick="this.style.display='none'; Codehighlighter1_407_632_Open_Text.style.display='none'; Codehighlighter1_407_632_Closed_Image.style.display='inline'; Codehighlighter1_407_632_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_407_632_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_407_632_Closed_Text.style.display='none'; Codehighlighter1_407_632_Open_Image.style.display='inline'; Codehighlighter1_407_632_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_407_632_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_407_632_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tmp.x&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;p[i].x&nbsp;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">&nbsp;(&nbsp;p[i].y&nbsp;</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">(&nbsp;p[i].y&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;p[i</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">].y&nbsp;))</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">(&nbsp;p[i</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">].x&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;p[i].x&nbsp;);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;如此可包含&nbsp;+&nbsp;-&nbsp;号的问题&nbsp;</span><span style="COLOR: #008000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tmp.y&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a.add(&nbsp;tmp&nbsp;);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b.add(&nbsp;tmp&nbsp;);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p1&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;a.poly_centroid();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p2&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;b.poly_centroid();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(&nbsp;sig(&nbsp;p1.x&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;p2.x&nbsp;)&nbsp;</span><span style="COLOR: #000000">==</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;)<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Balanced.\n</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(&nbsp;sig&nbsp;(&nbsp;p1.x&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;p2.x&nbsp;)&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;)<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">CE&nbsp;is&nbsp;aft&nbsp;of&nbsp;CLR&nbsp;by&nbsp;%.2lf&nbsp;units.\n</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,fabs(p1.x</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">p2.x));<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">CE&nbsp;is&nbsp;forward&nbsp;of&nbsp;CLR&nbsp;by&nbsp;%.2lf&nbsp;units.\n</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,fabs(p1.x</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">p2.x));<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;main()<br><img id=Codehighlighter1_1020_1125_Open_Image onclick="this.style.display='none'; Codehighlighter1_1020_1125_Open_Text.style.display='none'; Codehighlighter1_1020_1125_Closed_Image.style.display='inline'; Codehighlighter1_1020_1125_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_1020_1125_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1020_1125_Closed_Text.style.display='none'; Codehighlighter1_1020_1125_Open_Image.style.display='inline'; Codehighlighter1_1020_1125_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_1020_1125_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_1020_1125_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;polygon&nbsp;poly;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">(&nbsp;poly.read()&nbsp;</span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000">&nbsp;EOF&nbsp;)<br><img id=Codehighlighter1_1081_1109_Open_Image onclick="this.style.display='none'; Codehighlighter1_1081_1109_Open_Text.style.display='none'; Codehighlighter1_1081_1109_Closed_Image.style.display='inline'; Codehighlighter1_1081_1109_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_1081_1109_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1081_1109_Closed_Text.style.display='none'; Codehighlighter1_1081_1109_Open_Image.style.display='inline'; Codehighlighter1_1081_1109_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_1081_1109_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_1081_1109_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;poly.sovle();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<img src ="http://www.cppblog.com/Huicpc217/aggbug/94690.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/Huicpc217/" target="_blank">Huicpc217</a> 2009-08-28 17:59 <a href="http://www.cppblog.com/Huicpc217/articles/94690.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>计算几何模板</title><link>http://www.cppblog.com/Huicpc217/articles/94319.html</link><dc:creator>Huicpc217</dc:creator><author>Huicpc217</author><pubDate>Mon, 24 Aug 2009 14:58:00 GMT</pubDate><guid>http://www.cppblog.com/Huicpc217/articles/94319.html</guid><wfw:comment>http://www.cppblog.com/Huicpc217/comments/94319.html</wfw:comment><comments>http://www.cppblog.com/Huicpc217/articles/94319.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/Huicpc217/comments/commentRss/94319.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/Huicpc217/services/trackbacks/94319.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->/*二维几何模板，写入了一些常用函数。使用&nbsp;传引用&nbsp;&amp;&nbsp;时&nbsp;，最好加上&nbsp;const为了控制程序，使其具有灵活性，不写&nbsp;line&nbsp...&nbsp;&nbsp;<a href='http://www.cppblog.com/Huicpc217/articles/94319.html'>阅读全文</a><img src ="http://www.cppblog.com/Huicpc217/aggbug/94319.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/Huicpc217/" target="_blank">Huicpc217</a> 2009-08-24 22:58 <a href="http://www.cppblog.com/Huicpc217/articles/94319.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>