接近两年没有写博客了,心血来潮整理下最近的智慧妙招。感慨之前的知识没有白学,任你可以充分发挥了集几何关系、极限、向量、算法等于一体的综合知识的较量。
问题1:已知异性板板边形(如图所示形如1、2、3、4、5、6.....横平竖直的一些线条)和中心点,求解1、2、3、4、5、6边位于中心点的哪个位置,(上下左右方向)有且仅取一个位置关系。
错误思路:自定义Y轴正方向为参照,中点到各个边终点的方向属于已知,由此可以粗略得知上下左右的线方向与Y轴的夹角范围(根据极限取线终点进行运算,粗算结果):底部:[0,90)||(270,360] 上部:(90,270)右侧:(180,360) 左侧:(0,180)。此时如果图形中点与某线中点的连线方向与Y轴的夹角为45°,就很难确定线在图形中点的方向,因为45°是在左侧的范围也在底部范围内。此路不通得换........
正确思路:已知一个四边形,那么可以得知图形中点和线中点连线方向与Y轴夹角的精确角度:下部:180° 右侧:270°,上部:0° 左侧:90°[顺时针转角],由此可以推出,只要能确定每条线所在的直线与Y轴的夹角便可以得到图形中点与线的关系。
由此想到要确定不规则图形(前提线是横平竖直的)中点和线的位置关系,只要确定中点到每天线所在直线的垂足点,进而结合上边的思路便可以确定位置关系,O(∩_∩)O
问题2:合并相邻相等的线条,进行重新标注。如图,相邻的两个200合并之后为400;相邻的3个100合并之后为300。(算法和思路)
思路:由于标注是根据参照线进行创建的,合并相邻相等的标注就是变相的剔除参照线;涉及到要更改标注样式为200*2或者100*3样式,则要进行原标注和现标注的对比,才能确定标注合并的个数(也就是乘号后边的值)代码如下: