国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      字符串配置裝置制造方法

      文檔序號:6484574閱讀:168來源:國知局
      字符串配置裝置制造方法
      【專利摘要】本發(fā)明的字符串配置裝置具備:字符串配置數(shù)據(jù)獲取部(2),獲取用于沿著道路配置字符串的字符串配置數(shù)據(jù);道路節(jié)點列間除部(3),對構成由字符串配置數(shù)據(jù)獲取部(2)獲取的字符串配置數(shù)據(jù)中包含的道路節(jié)點列的節(jié)點的一部分進行間除;控制點列制作部(4),根據(jù)由道路節(jié)點列間除部(3)間除之后的道路節(jié)點列制作控制點列;曲線近似部(5),制作用直線對由通過控制點列制作部(4)制作的控制點列形成的曲線進行了近似的節(jié)點列;曲線近似節(jié)點列存儲部(6),將由曲線近似部(5)制作出的節(jié)點列保存為曲線近似節(jié)點列;以及字符串配置處理部(13a),根據(jù)曲線近似節(jié)點列存儲部(6)中保存的曲線近似節(jié)點列進行字符串的配置處理。
      【專利說明】字符串配置裝置
      【技術領域】
      [0001 ] 本發(fā)明涉及在地圖上配置道路名稱等字符串的字符串配置裝置。
      【背景技術】
      [0002]以往,已知搭載了字符串配置功能的車輛導航系統(tǒng),其中,所述字符串配置功能是將道路名稱等字符串從開始字符串的配置的節(jié)點(以下稱為“配置開始節(jié)點”)起沿著道路線(以下稱為“道路節(jié)點列”)配置字符串的功能(例如,參照專利文獻I?專利文獻3)。如果使用該字符串配置功能,則與道路平行地配置字符,所以在配置橫跨2個線路(link)的字符串的情況下,道路線路的角度變化(以下稱為“道路角度變化”)和字符的配置角度的變化(以下稱為“字符角度變化”)變得相等。
      [0003]專利文獻1:日本特開2008-76593號公報
      [0004]專利文獻2:日本特開2000-29450號公報
      [0005]專利文獻3:日本特開平6-259525號公報

      【發(fā)明內(nèi)容】

      [0006]關于使用上述以往的字符串配置裝置中的字符串配置功能來顯示的字符串,由于道路角度變化和字符角度變化相等,所以存在如下問題:隨著道路角度變化變大,字符角度變化也變大,字符串的可讀性降低。
      [0007]本發(fā)明是為了解決該問題而完成的,其課題在于提供一種提高了字符串的可讀性的字符串配置裝置。
      [0008]本發(fā)明涉及的字符串配置裝置具備:字符串配置數(shù)據(jù)獲取部,獲取用于沿著道路配置字符串的字符串配置數(shù)據(jù);道路節(jié)點列間除部,對構成由字符串配置數(shù)據(jù)獲取部獲取的字符串配置數(shù)據(jù)中包含的道路節(jié)點列的節(jié)點的一部分進行間除;控制點列制作部,根據(jù)由道路節(jié)點列間除部間除之后的道路節(jié)點列,制作控制點列;曲線近似部,制作用直線對由通過控制點列制作部制作出的控制點列形成的曲線進行了近似的節(jié)點列;曲線近似節(jié)點列存儲部,將由曲線近似部制作出的節(jié)點列保存為曲線近似節(jié)點列;以及字符串配置處理部,根據(jù)曲線近似節(jié)點列存儲部中保存的曲線近似節(jié)點列,進行字符串的配置處理。
      [0009]根據(jù)本發(fā)明的字符串配置裝置,通過在根據(jù)道路線路制作出的曲線上配置字符串,能夠減小字符角度變化,所以能夠提高字符串的可讀性。
      【專利附圖】

      【附圖說明】
      [0010]圖1是示出本發(fā)明的實施方式I的字符串配置裝置的結(jié)構的框圖。
      [0011]圖2是示出本發(fā)明的實施方式I的字符串配置裝置的曲線近似部的詳細的結(jié)構的框圖。
      [0012]圖3是示出本發(fā)明的實施方式I的字符串配置裝置的字符串配置計算部的詳細的結(jié)構的框圖。[0013]圖4是示出本發(fā)明的實施方式I的字符串配置裝置的字符配置部的詳細的結(jié)構的框圖。
      [0014]圖5是示出本發(fā)明的實施方式I的字符串配置裝置的動作的流程圖。
      [0015]圖6是示出在本發(fā)明的實施方式I的字符串配置裝置中作為處理對象的道路節(jié)點列中的節(jié)點與線路的關系的例子的圖。
      [0016]圖7是示出本發(fā)明的實施方式I的字符串配置裝置的道路節(jié)點列間除部中進行的道路節(jié)點列的間除處理的流程圖。
      [0017]圖8是示出在本發(fā)明的實施方式I的字符串配置裝置中進行的間除處理后的道路節(jié)點列中的節(jié)點與線路的關系的例子的圖。
      [0018]圖9是示出在本發(fā)明的實施方式I的字符串配置裝置中的間除處理后作為處理對象的道路節(jié)點列中的節(jié)點與線路的關系的例子的圖。
      [0019]圖10是示出本發(fā)明的實施方式I的字符串配置裝置的控制點列制作部中進行的控制點列的制作處理的流程圖。
      [0020]圖11是示出本發(fā)明的實施方式I的字符串配置裝置的控制點列制作部中進行的控制點列的制作處理中求出的控制點列的例子的圖。
      [0021]圖12是示出本發(fā)明的實施方式I的字符串配置裝置的曲線近似部中進行的曲線近似節(jié)點列的制作處理的流程圖。
      [0022]圖13是用于說明本發(fā)明的實施方式I的字符串配置裝置中進行的曲線近似節(jié)點列的制作處理的說明圖。
      [0023]圖14是詳細地示出本發(fā)明的實施方式I的字符串配置裝置中進行的曲線近似節(jié)點列的制作處理的一部分的流程圖。
      [0024]圖15是示出由本發(fā)明的實施方式I的字符串配置裝置在曲線近似后獲取的曲線近似節(jié)點列與道路節(jié)點列的關系的圖。
      [0025]圖16是示出本發(fā)明的實施方式I的字符串配置裝置的字符串配置計算部中進行的字符串配置處理的流程圖。
      [0026]圖17是示出本發(fā)明的實施方式I的字符串配置裝置的字符配置部中進行的字符配置處理的詳細內(nèi)容的流程圖。
      [0027]圖18是用于說明本發(fā)明的實施方式I的字符串配置裝置中進行的字符的配置處理的圖。
      [0028]圖19是用于說明本發(fā)明的實施方式I的字符串配置裝置中進行的字符的配置處理的圖。
      [0029]圖20是用于說明通過本發(fā)明的實施方式I的字符串配置裝置中進行的字符的配置處理而配置的字符串的圖。
      [0030]圖21是用于說明通過本發(fā)明的實施方式I的字符串配置裝置中進行的字符的配置處理而配置的字符串的圖。
      [0031](符號說明)
      [0032]1:字符串配置數(shù)據(jù)存儲部;2:字符串配置數(shù)據(jù)獲取部;3:道路節(jié)點列間除部;4:控制點列制作部;5:曲線近似部;6:曲線近似節(jié)點列存儲部;7:曲線近似節(jié)點登記部;8:直線判定部;9:曲線上中間點制作部;10:如半曲線近似部;11:后半曲線近似部;12:單數(shù)直線近似部;13a:字符串配置處理部;13:曲線近似節(jié)點列獲取部;14:字符串配置計算部;15:字符串配置登記部;16:輸出字符串配置存儲部;17:線路角度計算部;18:字符配置部;19:字符線路外判定部;20:重疊判定部;21:參數(shù)更新部;22:字符數(shù)判定部;23:初始字符判定部;24:字符配置位置決定部;25:字符左下坐標計算部;26:下一字符配置距尚更新部。
      【具體實施方式】
      [0033]以下,參照附圖,詳細說明本發(fā)明的實施方式。
      [0034]實施方式1.[0035]圖1是示出本發(fā)明的實施方式I的字符串配置裝置的結(jié)構的框圖。該字符串配置裝置具備字符串配置數(shù)據(jù)存儲部1、字符串配置數(shù)據(jù)獲取部2、道路節(jié)點列間除部3、控制點列制作部4、曲線近似部5、曲線近似節(jié)點列存儲部6以及字符串配置處理部13a,進而,字符串配置處理部13a具備曲線近似節(jié)點列獲取部13、字符串配置計算部14、字符串配置登記部15以及輸出字符串配置存儲部16。
      [0036]字符串配置數(shù)據(jù)存儲部I存儲字符串配置數(shù)據(jù)。字符串配置數(shù)據(jù)包括表示構成字符串的多個字符、各字符的縱寬以及橫寬、字符串所沿著的道路節(jié)點列以及字符串的配置開始節(jié)點的數(shù)據(jù)。字符串配置數(shù)據(jù)存儲部I中存儲的字符串配置數(shù)據(jù)通過字符串配置數(shù)據(jù)獲取部2讀出。
      [0037]字符串配置數(shù)據(jù)獲取部2從字符串配置數(shù)據(jù)存儲部I讀出并獲取字符串配置數(shù)據(jù)。由該字符串配置數(shù)據(jù)獲取部2獲取的字符串配置數(shù)據(jù)被送到道路節(jié)點列間除部3。
      [0038]道路節(jié)點列間除部3對構成從字符串配置數(shù)據(jù)獲取部2送來的字符串配置數(shù)據(jù)中包含的道路節(jié)點列的節(jié)點的一部分進行間除(thinning)。由該道路節(jié)點列間除部3對節(jié)點的一部分進行了間除之后的道路節(jié)點列被送到控制點列制作部4。通過該道路節(jié)點列間除部3中的間除,能夠使字符串的軌跡平滑。
      [0039]控制點列制作部4根據(jù)從道路節(jié)點列間除部3送來的、字符串所沿著的道路節(jié)點列,制作用于生成曲線的控制點列。由該控制點列制作部4制作的控制點列被送到曲線近似部5。
      [0040]曲線近似部5根據(jù)從控制點列制作部4送來的控制點列來制作曲線,對該制作出的曲線進行直線近似而生成節(jié)點列。由該曲線近似部5生成的節(jié)點列作為曲線近似節(jié)點列被送到曲線近似節(jié)點列存儲部6。通過用直線來近似在該曲線近似部5中根據(jù)道路線路制作出的曲線,從而能夠使字符配置高速化。關于該曲線近似部5的詳細內(nèi)容,在后面描述。
      [0041]曲線近似節(jié)點列存儲部6保存從曲線近似部5送來的曲線近似節(jié)點列。由曲線近似節(jié)點列獲取部13讀出該曲線近似節(jié)點列存儲部6中保存的曲線近似節(jié)點列。曲線近似節(jié)點列獲取部13從曲線近似節(jié)點列存儲部6讀出并獲取曲線近似節(jié)點列。由該曲線近似節(jié)點列獲取部13獲取的曲線近似節(jié)點列被送到字符串配置計算部14。
      [0042]字符串配置計算部14根據(jù)從曲線近似節(jié)點列獲取部13送來的曲線近似節(jié)點列,計算字符串的配置位置。由該字符串配置計算部14計算出的字符串的配置位置被送到字符串配置登記部15。關于該字符串配置計算部14的詳細內(nèi)容,在后面描述。
      [0043]字符串配置登記部15在從字符串配置計算部14送來的判定結(jié)果表示達到了既定的字符數(shù)的情況下,將從該字符串配置計算部14送來的字符串的配置位置登記到輸出字符串配置存儲部16。輸出字符串配置存儲部16存儲由字符串配置登記部15登記的字符串的配置位置。
      [0044]接下來,說明上述曲線近似部5的詳細內(nèi)容。圖2是示出曲線近似部5的詳細的結(jié)構的框圖。曲線近似部5具備曲線近似節(jié)點登記部7、直線判定部8、曲線上中間點制作部9、前半曲線近似部10、后半曲線近似部11以及單數(shù)直線近似部12。
      [0045]曲線近似節(jié)點登記部7將從后半曲線近似部11或者單數(shù)直線近似部12送來的曲線近似節(jié)點列登記到曲線近似節(jié)點列存儲部6。直線判定部8判定根據(jù)從控制點列制作部4送來的控制點列制作出的曲線能否用直線近似、換言之判定是否接近直線。如果在該直線判定部8中判斷為不接近直線,則順序(sequence)轉(zhuǎn)移到曲線上中間點制作部9中的處理,如果判斷為接近直線,則轉(zhuǎn)移到單數(shù)直線近似部12中的處理。
      [0046]曲線上中間點制作部9制作根據(jù)從控制點列制作部4送來的控制點列制作出的曲線上的中間點。由該曲線上中間點制作部9制作出的中間點被送到前半曲線近似部10以及后半曲線近似部U。前半曲線近似部10用直線近似根據(jù)從控制點列制作部4送來的控制點列制作出的曲線中的、在從曲線上中間點制作部9送來的中間點之前的曲線。通過該前半曲線近似部10中的直線近似來制作出的節(jié)點列被送到后半曲線近似部11。
      [0047]后半曲線近似部11用直線近似根據(jù)從控制點列制作部4送來的控制點列制作出的曲線中的、在從曲線上中間點制作部9送來的中間點之后的曲線。通過該后半曲線近似部11中的直線近似來制作出的節(jié)點列與從前半曲線近似部10送來的節(jié)點列連起來作為曲線近似節(jié)點列被送到曲線近似節(jié)點登記部7。
      [0048]單數(shù)直線近似部12用I條直線近似根據(jù)從控制點列制作部4送來的控制點列制作出的曲線。在該單數(shù)直線近似部12中通過直線近似來制作出的節(jié)點列作為曲線近似節(jié)點列被送到曲線近似節(jié)點登記部7。
      [0049]接下來,說明上述字符串配置計算部14的詳細內(nèi)容。圖3是示出字符串配置計算部14的詳細的結(jié)構的框圖。字符串配置計算部14具備線路角度計算部17、字符配置部18、字符線路外判定部19、重疊判定部20、參數(shù)更新部21以及字符數(shù)判定部22。
      [0050]線路角度計算部17根據(jù)從曲線近似節(jié)點列獲取部13送來的曲線近似節(jié)點列,計算在各節(jié)點處線路形成的角度(以下稱為“線路角度”)。由該線路角度計算部17計算出的線路角度被送到字符配置部18。
      [0051]字符配置部18根據(jù)從線路角度計算部17送來的線路角度,配置字符。由該字符配置部18配置的字符被送到字符線路外判定部19。關于該字符配置部18的詳細內(nèi)容,在后面描述。字符線路外判定部19判定從字符配置部18送來的字符是否在線路外。該字符線路外判定部19中的判定結(jié)果被送到重疊判定部20。
      [0052]重疊判定部20根據(jù)從字符線路外判定部19送來的判定結(jié)果,判定字符彼此是否重疊。該重疊判定部20中的判定結(jié)果被送到參數(shù)更新部21。參數(shù)更新部21依照從重疊判定部20送來的判定結(jié)果,更新字符串配置中使用的參數(shù)。由該參數(shù)更新部21更新后的參數(shù)被送到字符數(shù)判定部22。
      [0053]字符數(shù)判定部22參照從參數(shù)更新部21送來的參數(shù),判定是否達到了既定的字符數(shù)。該字符數(shù)判定部22中的判定結(jié)果被送到字符串配置登記部15。[0054]接下來,說明上述字符配置部18的詳細內(nèi)容。圖4是示出字符配置部18的詳細的結(jié)構的框圖。字符配置部18具備初始字符判定部23、字符配置位置決定部24、字符左下坐標計算部25以及下一字符配置距離更新部26。
      [0055]初始字符判定部23判定根據(jù)從線路角度計算部17送來的線路角度配置的字符是否為字符串中的第I個字符。該初始字符判定部23中的判定結(jié)果被送到字符配置位置決定部24以及字符左下坐標計算部25。
      [0056]字符配置位置決定部24根據(jù)從初始字符判定部23送來的判定結(jié)果、或者根據(jù)由字符左下坐標計算部25計算出的字符的左下坐標,決定字符的配置位置。由該字符配置位置決定部24決定的配置位置被送到字符配置位置決定部24或者字符左下坐標計算部25。
      [0057]字符左下坐標計算部25根據(jù)從初始字符判定部23送來的判定結(jié)果,計算字符的左下坐標。由字符左下坐標計算部25計算出的字符的左下坐標被送到字符配置位置決定部24或者下一字符配置距離更新部26。下一字符配置距離更新部26根據(jù)由字符左下坐標計算部25計算出的字符的左下坐標,決定直至下一字符為止的距離,更新字符間隔。由該下一字符配置距離更新部26更新后的字符間隔被送到字符線路外判定部19。
      [0058]接下來,說明如上那樣構成的實施方式I的字符串配置裝置的動作。圖5是示出字符串配置裝置的動作的流程圖。
      [0059]在實施方式I中,作為一個例子,設為如下而進行說明:字符串配置數(shù)據(jù)包括字符串“String”中的各字符的橫寬、縱寬以及字符串“String”所沿著的道路節(jié)點列,字符串“String”中的各字符的縱寬是10、橫寬是5,字符串“String”所沿著的道路節(jié)點列是P (I)=(0,10), P (2)= (5,10), P (3)= (10,10), P (4)= (50,10)以及 P (5)= (10,50),開始字符串的配置的節(jié)點是P (D= (0,10)o
      [0060]另外,設為表示對曲線進行直線近似時的線路的條數(shù)的SEPARATE_NUM是2,作為是用I條線路對曲線進行近似還是用多條線路對曲線進行近似的判斷中使用的距離的邊界的SEPARATE_THRESHOLD是15,作為是用I條線路對曲線進行近似還是用多條線路對曲線進行近似的判斷中使用的角度變化的邊界的STRAIGHT_THRESHOLD是10,作為判斷可否間除的距離的邊界的CULLING_THRESHOLD是10,作為range的增量的STEP_SIZE是1,詳細內(nèi)容在后面描述。圖6示出道路節(jié)點列中的節(jié)點與線路的關系的例子。
      [0061]當字符串配置裝置的動作開始時,首先,獲取字符串數(shù)據(jù)(步驟ST11)。S卩,字符串配置數(shù)據(jù)獲取部2從字符串配置數(shù)據(jù)存儲部I讀出字符串配置數(shù)據(jù),獲取字符串所沿著的道路節(jié)點列和字符串的配置開始節(jié)點。在該例子中,獲取字符串“String”所沿著的道路節(jié)點列和開始字符串“String”的配置的節(jié)點。
      [0062]接下來,進行道路節(jié)點列的間除(步驟ST12)。即,道路節(jié)點列間除部3為了制作平滑的曲線,對構成由字符串配置數(shù)據(jù)獲取部2獲取的字符串配置數(shù)據(jù)中包含的道路節(jié)點列的節(jié)點的一部分進行間除。此處,參照圖7所示的流程圖,說明在道路節(jié)點列間除部3中進行的道路節(jié)點列的間除處理的詳細內(nèi)容。
      [0063]在道路節(jié)點列的間除處理中,道路節(jié)點列中包含的節(jié)點被依次掃描,滿足以下的3個條件的全部條件的節(jié)點從道路節(jié)點列被間除。
      [0064](I)節(jié)點不是道路節(jié)點列的配置開始節(jié)點或者配置結(jié)束節(jié)點
      [0065](2)未對前面的節(jié)點進行間除[0066](3)與前面的節(jié)點的距離是⑶LLING_THRESHOLD以下
      [0067]當?shù)缆饭?jié)點列的間除處理開始時,首先,變量ir被初始化為I (步驟ST121)。接下來,如果變量ir是道路節(jié)點數(shù)以下,則循環(huán)開始(步驟ST122)。當循環(huán)開始時,首先,調(diào)查節(jié)點P (ir)是否為配置開始節(jié)點或者配置結(jié)束節(jié)點(步驟ST123)。即,道路節(jié)點列間除部3調(diào)查從字符串配置數(shù)據(jù)獲取部2送來的字符串配置數(shù)據(jù)中包含的道路節(jié)點列中的節(jié)點P(ir)是否為配置開始節(jié)點或者配置結(jié)束節(jié)點。如果在該步驟ST123中判斷為節(jié)點P(ir)是配置開始節(jié)點或者配置結(jié)束節(jié)點,則不滿足上述3個條件中的(I ),所以不進行節(jié)點P (ir )的間除,順序進入步驟ST127。
      [0068]如果在上述步驟ST123中判斷為節(jié)點P (ir)不是配置開始節(jié)點或者配置結(jié)束節(jié)點,則接下來,調(diào)查節(jié)點P (ir — I)是否被間除(步驟ST124)。即,道路節(jié)點列間除部3調(diào)查是否對前一個節(jié)點P (ir — I)進行了間除。如果在該步驟ST124中判斷為節(jié)點P (ir —I)被間除,則不滿足上述3個條件中的(2),所以不進行節(jié)點P (ir)的間除,順序進入步驟ST127。
      [0069]如果在上述步驟ST124中判斷為未對節(jié)點P (ir — I)進行間除,則接下來,調(diào)查節(jié)點P (ir — I)與節(jié)點P (ir)的距離是否為CULLING_THRESHOLD以下(步驟ST125)。即,道路節(jié)點列間除部3調(diào)查前面的節(jié)點P (ir — I)與當前的節(jié)點P (ir)之間的距離是否為⑶LLING_THRESHOLD (在該例子中為10)以下。如果在該步驟ST125中判斷為節(jié)點P (ir —O與節(jié)點P (ir)的距離并非⑶LLING_THRESHOLD以下,則不滿足上述3個條件中的(3),所以不進行節(jié)點P (ir)的間除,順序進入步驟ST127。
      [0070]另一方面,如果在步驟ST125中判斷為節(jié)點P (ir -1)與節(jié)點P (ir)的距離是⑶LLING_THRESHOLD以下,則理解為滿足了上述3個條件的全部的意思,接下來,進行節(jié)點P(ir)的刪除(步驟ST126)。即,道路節(jié)點列間除部3對從字符串配置數(shù)據(jù)獲取部2送來的字符串配置數(shù)據(jù)中包含的道路節(jié)點列中的節(jié)點(ir)進行間除。之后,順序進入步驟ST127。在步驟ST127中,變量ir被遞增,以后反復進行步驟ST122與步驟ST127之間的處理,直至變量ir變得比道路節(jié)點數(shù)大為止。
      [0071]通過以上的反復處理,節(jié)點P (I)?P (5)被如下那樣處理。首先,研究節(jié)點P(I)可否間除。此處,節(jié)點P (I)是道路節(jié)點列的配置開始節(jié)點,所以不被間除。接下來,研究節(jié)點P (2)可否間除。此處,節(jié)點P (2)不是道路節(jié)點列的配置開始節(jié)點或者配置結(jié)束節(jié)點,前面的節(jié)點P (I)未被間除,并且節(jié)點P (I)與節(jié)點P (2)之間的距離是5,是作為⑶LLING_THRESHOLD的10以下。因此,滿足上述3個條件的全部,所以節(jié)點P (2)被間除。
      [0072]接下來,研究節(jié)點P (3)可否間除。此處,節(jié)點P (3)不是道路線路的配置開始節(jié)點或者配置結(jié)束節(jié)點,但前面的節(jié)點P (2)被間除,所以節(jié)點P (3)不被間除。以下同樣地,對節(jié)點P (4)以后也進行處理。
      [0073]以上處理的結(jié)果,如圖8所示,制作出節(jié)點P (2)被間除了的道路節(jié)點列、即由節(jié)點P (1)、P (3)、P (4)以及P (5)構成的道路節(jié)點列。此處,如圖9所示,將間除后的道路節(jié)點列 P (1)、P (3)、P (4)以及 P (5)分別設為 P’(1)、P’(2)、Ρ’(3)以及 P’(4)來說明以后的處理。
      [0074]當以上的道路節(jié)點列的間除處理結(jié)束時,接下來,如圖5的流程圖所示,制作控制點列(步驟ST13)。即,控制點列制作部4根據(jù)間除后的道路節(jié)點列,制作控制點列。此處,參照圖10所示的流程圖,說明控制點列的制作處理的詳細內(nèi)容。
      [0075]在控制點列的制作處理中,首先,設定控制點列B (ic){ic=l,...,間除后的道路節(jié)點數(shù)一 2}。詳細而言,首先,變量ic被初始化為I (步驟ST131)。接下來,如果變量ic是“間除后的道路節(jié)點數(shù)一 2”以下,則開始循環(huán)(步驟ST132)。當循環(huán)開始時,依照下述(I)式計算控制點B (ic)(步驟ST133)。之后,順序進入步驟ST134。
      [0076]B(ic)=P’(ic+1)…(I)
      [0077]此處,ic=l,…,間除后的道路節(jié)點數(shù)一 2。
      [0078]在步驟ST134中,變量ic被遞增,以后反復進行步驟ST132與步驟ST134之間的處理,即反復進行步驟ST133的處理,直至變量ic變得比“間除后的道路節(jié)點數(shù)一 2”大為止。
      [0079]在以上的反復處理中,得到間除后的道路節(jié)點數(shù)=4,且控制點B (1)=P’ (2)=(10,10)以及控制點 B (2)=P,(3)= (50,10)。
      [0080]接下來,設定控制點列A(ic){ic=l,...,間除后的道路節(jié)點數(shù)一I}。詳細而言,首先,變量ic被初始化為1(步驟ST135)。接下來,如果變量ic是“間除后的道路節(jié)點數(shù)一 I”以下,則開始循環(huán)(步驟ST136)。當循環(huán)開始時,首先,調(diào)查變量ic是否為1(步驟ST137)。如果在該步驟ST137中判斷為變量ic是1,則接下來,設定控制點A (ic)=P’ (ic)(步驟ST138)。之后,順序進入步驟ST142。
      [0081 ] 如果在上述步驟ST137中判斷為變量ic不是I,則接下來,調(diào)查變量ic是否為“道路節(jié)點數(shù)一 I”(步驟ST139)。如果在該步驟ST139中判斷為變量ic是“道路節(jié)點數(shù)一 1”,則設定為控制點A (ic — 1)=P’ (ic)(步驟ST140)。之后,順序進入步驟ST142。
      [0082]另一方面,如果在步驟ST139中判斷為變量ic不是“道路節(jié)點數(shù)一 1”,則設定為控制點A (ic)= (B (ic - 1)+B (ic))/2 (步驟ST141)。之后,順序進入步驟ST142。在步驟ST142中,變量ic被遞增,以后反復進行步驟ST136與步驟ST142之間的處理,直至變量ic變得比“間除后的道路節(jié)點數(shù)一 I”大為止。
      [0083]通過以上的反復處理,控制點A(ic)如以下所示,設定值根據(jù)變量ic的值而變化。首先,在ic=l的情況下,對控制點A (ic)設定節(jié)點P’(1),在變量ic是“道路節(jié)點數(shù)一 I”的情況下,對控制點A (ic — I)設定節(jié)點P’(ic)。在變量ic既不是I也不是“間除后的道路節(jié)點數(shù)一 I”的情況下,對控制點A (ic)設定控制點B (ic)與B (ic -1)的中點。
      [0084]以上處理的結(jié)果,首先,設定控制點A (I)。關于控制點A (1),由于是ic=l,所以設定節(jié)點P’(I)。接下來,設定控制點A (2)。關于控制點A (2),由于是ic古1、3,所以成為控制點B (I)與B (2)的中點(30,10)。之后,設定控制點A (3)。關于控制點A (3),由于是ic=3,所以設定節(jié)點P’(4)。這樣,如圖11所示,求出控制點列A (I)、A (2)以及A (3)、和控制點列B (I)以及B (2)。
      [0085]當以上的控制點列的制作處理結(jié)束時,接下來,如圖5的流程圖所示,制作對曲線進行了近似的直線(步驟ST14)。即,曲線近似部5根據(jù)控制點列,制作對曲線進行了近似的直線。此處,參照圖12所示的流程圖,說明在曲線近似部5中進行的對曲線進行了近似的直線(以下,曲線近似節(jié)點列)的制作處理的詳細內(nèi)容。
      [0086]在曲線近似節(jié)點列的制作處理中,首先,變量ia被初始化為I (步驟ST151)。接下來,進行節(jié)點的登記(步驟ST152)。即,曲線近似節(jié)點登記部7將控制點A (I)保存到曲線近似節(jié)點列存儲部6。在該情況下,A (I) = (0,10)被保存到曲線近似節(jié)點列存儲部6。
      [0087]接下來,如果變量ia是“間除后的道路節(jié)點數(shù)一2”以下,則開始循環(huán)(步驟ST153)。當循環(huán)開始時,調(diào)查是否為線路(A (ia)、B (ia))與線路(B (ia)、A (ia+1))的角度變化<STRAIGHT_THRESHOLD (步驟ST154)。即,直線判定部8判定通過控制點A (ia)、B(ia)以及A (ia+Ι)制作的2次貝塞爾曲線(以后簡稱為“貝塞爾曲線”)能否用直線近似。具體而言,首先,判定線路(A (ia),B (ia))與線路(B (ia),A (ia+1))的角度變化是否小于STRAIGHT_THRESHOLD。另外,變量ia表示控制點列的索引,線路(A (ia),B (ia))與線路(B (ia), A (ia+Ι))的角度變化Θ如圖13所示,是線路(A (ia), B (ia))的朝向與線路(B (ia), A (ia+Ι))的朝向的差分的絕對值。此處,線路(A (ia), B (ia))的朝向是將X軸設為0°、將y軸設為90°時的偏角。
      [0088]在該例子中,在變量ic是I的情況下,如圖11所示,線路(A (1),B (I))的朝向成為0°,線路(B (I),A (2))的朝向也成為0°。因此,線路(A (I),B (I))與線路(B (I),A (2))的角度變化成為0°,在步驟ST154中判定為“是”。
      [0089]如果在上述步驟ST154中,判斷為是線路(A (ia), B (ia))與線路(B (ia), A(ia+Ι))的角度變化<STRAIGHT_THRESHOLD,則用I條線路近似曲線(步驟ST155)。S卩,單數(shù)直線近似部12用線路(A (ia),A (ia+1))近似通過控制點A (ia)、B (ia)以及A (ia+1)制作的貝塞爾曲線。在該例子中,用線路(A (I), A (2))近似通過控制點A (I)、B (I)以及A (2)制作的貝塞爾曲線。
      [0090]接下來,進行節(jié)點的登記(步驟ST156)。S卩,曲線近似節(jié)點登記部7將從單數(shù)直線近似部12送來的線路中的、除了已經(jīng)登記的A (I)以外的節(jié)點作為曲線近似節(jié)點保存到曲線近似節(jié)點列存儲部6。在該例子中,保存控制點A (2)。之后,順序進入步驟ST166。
      [0091]如果在上述步驟ST154中判斷為并非是線路(A (ia)、B (ia))與線路(B (ia)、A(ia+1))的角度變化<STRAIGHT_THRESHOLD,則順序進入步驟ST157。在該例子中,如果進入接下來的循環(huán)而變量ic成為2, 則直線判定部8調(diào)查線路(A (2),B (2))與線路(B (2), A(3))的角度變化是否小于STRAIGHT_THRESHOLD,由于線路(A (2),B (2))的朝向是0°,線路(B CZ), k (3))的朝向是135°,所以判定為線路(A (2),B (2))與線路(B CZ), k (3))的角度變化是STRAIGHT_THRESHOLD以上。因此,在步驟ST154中判定為“否”,順序進入步驟ST157,進行用多個直線近似通過控制點A (2)、B (2)以及A (3)制作的貝塞爾曲線的處理。
      [0092]具體而言,在步驟ST157中,計算曲線上的中間點即點MP(ia)。S卩,曲線上中間點制作部9依照下述(2)式計算貝塞爾曲線上的點MP (ia)。在該例子中,如果在(2)式中代AA (2)= (30,10),B (2)= (50,10),A (3)= (10,50),則曲線上的點 MP (2)= (35,20)。
      [0093]MP (ia) = (1-0.5) 2A (ia) +2 (1-0.5).0.5B (ia) +0.52A (ia+1)…(2)
      [0094]接下來,調(diào)查是否為曲線上的點MP (ia)與控制點A (ia)之間的距離<SEPARATE_THRESHOLD(步驟ST158)。即,前半曲線近似部10調(diào)查通過下述(3)式求出的控制點A(ia)與曲線上的點MP (ia)之間的距離Distl是否小于SEPARATE_THRESHOLD。
      [0095]如果在該步驟ST158中判斷為是曲線上的點MP (ia)與控制點A (ia)之間的距離<SEPARATE_THRESHOLD,則用I條線路近似曲線(步驟ST159)。即,單數(shù)直線近似部12用I條線路(A (ia),MP (ia))近似控制點A (ia)與曲線上的點MP (ia)之間的貝塞爾曲線。[0096]接下來,進行節(jié)點的登記(步驟ST160)。S卩,曲線近似節(jié)點登記部7將從單數(shù)直線近似部12送來的、用I條線路近似的節(jié)點保存到曲線近似節(jié)點列存儲部6。之后,順序進入步驟ST162。
      [0097]另一方面,如果在步驟ST158中判斷為并非是曲線上的點MP (ia)與控制點A (ia)之間的距離<SEPARATE_THRESHOLD,即判斷為距離Distl是SEPARATE_THRESHOLD以上,則用通過SEPARATE_NUM表示的條數(shù)的線路來近似控制點A (ia)與曲線上的點MP (ia)之間的貝塞爾曲線(步驟ST161)。
      [0098]參照圖14所示的流程圖,說明在該步驟ST161中進行的處理的詳細內(nèi)容。在該處理中,首先,變量im被初始化為I (步驟ST171)。接下來,如果變量im是SEPARATE_NUM以下,則循環(huán)開始(步驟ST172)。當循環(huán)開始時,首先,計算曲線上的節(jié)點(步驟ST173)。SP,前半曲線近似部10依照下述(4)式,計算曲線上的點MP (ia)與控制點A (ia)之間的曲線上的節(jié)點。
      [0099]Distl = I IA (ia)-MP (ia) | 1...(3)
      [0100]BP (ia, im) = (l_t (im)) 2A (ia)+2 (l_t (im)) t (im) B (ia)+t (im) 2A (ia+Ι)…(4)
      [0101]t(im) = 0.5 X im/SERARATE_NUM…(5)
      [0102]此處,(4)式中的t (im)是(5)式所示的值,BP (ia,im)是在控制點A (ia)與曲線上的點MP (ia)之間的貝塞爾曲線上制作的第im個節(jié)點。
      [0103]接下來,進行節(jié)點的登記(步驟ST174)。S卩,曲線近似節(jié)點登記部7將由前半曲線近似部10計算出的節(jié)點中的、除了已經(jīng)登記的節(jié)點以外的曲線上的節(jié)點登記到曲線近似節(jié)點列存儲部6。接下 來,變量im被遞增,以后反復進行步驟ST172與步驟ST175之間的處理,直至變量im變得比SEPARATE_NUM大為止。如果在該反復處理中變量im變得比SEPARATE_NUM大,則順序進入圖12所示的步驟ST162。
      [0104]在該情況下,Distl是 11.18,是 SEPARATE_THRESHOLD 以下。因此,用線路(A(2),MP (2))近似控制點A (2)與曲線上的點MP (2)之間的曲線。在該情況下,在節(jié)點的登記中,保存曲線上的點MP (2)。
      [0105]在步驟ST162中,調(diào)查是否為曲線上的點MP (ia)與控制點A (ia+Ι)之間的距離<SEPARATE_THRESHOLD。即,后半曲線近似部11調(diào)查依照下述(6)式計算出的曲線上的點MP (ia)與控制點 A (ia+Ι)的距離 Dist2 是否小于 SEPARATE_THRESHOLD。
      [0106]如果在該步驟ST162中判斷為是曲線上的點MP (ia)與控制點A (ia+Ι)之間的距離<SEPARATE_THRESHOLD,則用I條線路近似曲線(步驟ST163)。即,單數(shù)直線近似部12用I條線路(MP (ia),A (ia))近似曲線上的點MP (ia)與控制點A (ia+Ι)之間的貝塞爾曲線。
      [0107]接下來,進行節(jié)點的登記(步驟ST164)。S卩,曲線近似節(jié)點登記部7將從單數(shù)直線近似部12送來的用I條線路近似的節(jié)點保存到曲線近似節(jié)點列存儲部6。之后,順序進入步驟ST166。
      [0108]另一方面,如果在步驟ST162中判斷為并非是曲線上的點MP (ia)與控制點A(ia+Ι)之間的距離 <SEPARATE_THRESHOLD、即判斷為距離 Dist2 是 SEPARATE_THRESHOLD 以上,則用通過SEPARATE_NUM表示的條數(shù)的線路,近似曲線上的點MP (ia)與控制點A (ia+1)之間的貝塞爾曲線(步驟ST165)。之后,順序進入步驟ST166。[0109]參照圖14所示的流程圖,說明上述步驟ST165中進行的處理的詳細內(nèi)容。在該處理中,首先,變量im被初始化為I (步驟ST171)。接下來,如果變量im是SEPARATE_NUM以下,則循環(huán)開始(步驟ST172)。當循環(huán)開始時,首先,計算曲線上的節(jié)點(步驟ST173)。SP,前半曲線近似部10依照上述(4)式,計算曲線上的點MP (ia)與控制點A (ia)之間的曲線上的節(jié)點。
      [0110]Dist2 = I IMP(ia)-A(ia+1) | 丨…(6)
      [0111]t(iM) =0.5 X im/SEPARATE_NUM+0.5...(7)
      [0112]此處,(4)式中的t (im)是(7)式所示的值,此時的BP (ia,im)是在曲線上的點MP (ia)與控制點A (ia+Ι)之間的貝塞爾曲線上制作的第im個節(jié)點。
      [0113]接下來,進 行節(jié)點的登記(步驟ST174)。即,曲線近似節(jié)點登記部7將由后半曲線近似部11計算出的節(jié)點中的、除了已經(jīng)登記的節(jié)點以外的曲線上的節(jié)點登記到曲線近似節(jié)點列存儲部6。接下來,變量im被遞增,以后反復進行步驟ST172與步驟ST175之間的處理,直至變量im變得比SEPARATE_NUM大為止。之后,順序進入步驟ST166。
      [0114]在該情況下,Dist2是 26.9,是 SEPARATE_THRESHOLD 以上。因此,用 SEPARATE_NUM個線路,近似曲線上的點MP (2)與控制點A (ia+Ι)之間的曲線。具體而言,首先,計算 im=l 的節(jié)點。根據(jù)(7)式,t (1)=0.75, BP (2,1)= (26.25,32.5)。之后,BP (2,I)被保存到曲線近似節(jié)點列存儲部6。接下來,計算BP (2,2)。同樣地,在由用(7)式求出的t(2) =1計算出了 BP (2,2)= (10,50)之后,BP (2,2)被保存到曲線近似節(jié)點列存儲部6。
      [0115]在步驟ST166中,變量ia被遞增,以后反復進行步驟ST153與步驟ST166之間的處理,直至變量ia變得比“間除后的道路節(jié)點數(shù)一 2”大為止。如此方式,對根據(jù)控制點列制作出的曲線進行了直線近似的曲線近似節(jié)點被依次保存到曲線近似節(jié)點列存儲部6。
      [0116]另外,在前半曲線近似部10和后半曲線近似部11中,除了 t (im)的計算方法以外是相同的處理,所以前半曲線近似部10的在MP (ia)與控制點A (ia)之間的距離是SEPARATE_THRESHOLD以上的情況下、和后半曲線近似部11的在MP (ia)與控制點A (ia+1)之間的距離是SEPARATE_THRESHOLD以上的情況下的處理相同。
      [0117]當以上的對曲線進行了近似的直線的制作處理結(jié)束時,接下來,如圖5的流程圖所示,獲取字符串數(shù)據(jù)(步驟ST15)。即,字符串配置數(shù)據(jù)獲取部2從字符串配置數(shù)據(jù)存儲部I讀出字符串配置數(shù)據(jù),獲取構成I個字符串的多個字符、和各字符的縱寬以及橫寬。在該情況下,獲取字符串“String”的字符“S”、“t”、“r”、“i”、“n”、“g”、和“String”中的各字符的縱寬以及橫寬。
      [0118]接下來,獲取曲線近似節(jié)點列(步驟ST16)。即,曲線近似節(jié)點列獲取部13從曲線近似節(jié)點列存儲部6獲取曲線近似節(jié)點列。在該情況下,獲取在上述處理中登記的節(jié)點P”
      (I)= (0,10)、P,,(2)= (30,10)、P,,(3) =MP (2)= (35,20)、P,,(4) =BP (2,1)= (26.25,32.5)以及P” (5) =BP (2,2)= (10,50)。圖15示出所獲取的曲線近似節(jié)點列與道路節(jié)點列的關系。
      [0119]接下來,進行字符串的配置(步驟ST17)。即,字符串配置計算部14配置字符串。此處,參照圖16所示的流程圖,說明字符串配置處理的詳細內(nèi)容。
      [0120]在字符串配置處理中,首先,參數(shù)被初始化為ip=l、is=l以及range=0 (步驟ST181 )。接下來,如果參數(shù)ip是“曲線近似節(jié)點列的數(shù)一 I ”以下,則循環(huán)開始(步驟ST182)。當循環(huán)開始時,接下來,在該循環(huán)中,進而開始無限循環(huán)(步驟ST183)。當無限循環(huán)開始時,接下來,計算線路的朝向Θ’(步驟ST184)。即,線路角度計算部17計算線路(P”(ip),P”(ip+1))的朝向Θ’。在該例子中,線路(P”(1),P”(2))的朝向θ,=0。。
      [0121]接下來,進行第is個字符(以下稱為“字符is”)的配置(步驟ST185)。S卩,字符配置部18根據(jù)線路的朝向Θ ’以及字符間隔range,決定字符is的配置。此處,參照圖17所示的流程圖,說明決定字符is的配置的字符配置處理的詳細內(nèi)容。
      [0122]在字符配置處理中,首先,調(diào)查是否為is=l(步驟ST200)。即,初始字符判定部23判定表示所配置的字符的參數(shù)is是否為1、即是否為第I個字符。如果在該步驟ST200中判斷為是is=l,則轉(zhuǎn)移到配置字符is的處理。在該例子中,在初始狀態(tài)下是is=l,所以轉(zhuǎn)移到配置字符is的處理。
      [0123]在配置字符is的處理中,字符配置位置決定部24對節(jié)點P”(I)配置字符is,視為字符線路內(nèi)而結(jié)束字符配置處理。更詳細而言,首先,字符is的左下坐標LD( is)被設定于節(jié)點P” (O (步驟ST201)。即,字符配置位置決定部24將字符is的左下坐標LD (is)設定到節(jié)點P”(I)。
      [0124]接下來,對LD (is)配置字符is (步驟ST202)。即,字符配置位置決定部24對字符is的左下坐標LD(is)配置字符is。此處,字符配置是指如下處理:在將字符is的左下坐標LD (is)設定于節(jié)點P”(I)之后,對字符is的左上坐標LT (is)、右下坐標RD (is)以及右上坐標RT (is)設定用下述(8)式求出的值。另外,(8)式中的W (is)以及H (is)分別表示字符is的橫寬以及縱寬。在該例子中,成為LD (I)= (0,10),LT (I)= (0,20),RD (I)= (5,10),RT (I)= (5,20)。
      【權利要求】
      1.一種字符串配置裝置,具備: 字符串配置數(shù)據(jù)獲取部,獲取用于沿著道路配置字符串的字符串配置數(shù)據(jù); 道路節(jié)點列間除部,對構成由所述字符串配置數(shù)據(jù)獲取部獲取的字符串配置數(shù)據(jù)中包含的道路節(jié)點列的節(jié)點的一部分進行間除; 控制點列制作部,根據(jù)由所述道路節(jié)點列間除部間除之后的道路節(jié)點列,制作控制點列; 曲線近似部,制作用直線對由通過所述控制點列制作部制作出的控制點列形成的曲線進行了近似的節(jié)點列; 曲線近似節(jié)點列存儲部,將由所述曲線近似部制作出的節(jié)點列保存為曲線近似節(jié)點列;以及 字符串配置處理部,根據(jù)所述曲線近似節(jié)點列存儲部中保存的曲線近似節(jié)點列,進行字符串的配置處理。
      2.根據(jù)權利要求1所述的字符串配置裝置,其特征在于, 曲線近似部具備: 直線判定部,判定能否用直線近似由通過控制點列制作部制作出的控制點列形成的曲線.曲線上中間點制作部,在所述直線判定部中判定為無法用直線近似的情況下,制作由通過所述控制點列制作部制作出的控制點列形成的曲線上的中間點; 前半曲線近似部,輸出用直線對`由來自所述控制點列制作部的控制點列形成的曲線中的、在通過所述曲線上中間點制作部制作出的中間點之前的曲線進行近似而制作出的節(jié)點列; 后半曲線近似部,將用直線對由來自所述控制點列制作部的控制點列形成的曲線中的、在通過所述曲線上中間點制作部制作出的中間點之后的曲線進行近似而制作出的節(jié)點列連到通過所述前半曲線近似部對直線進行近似而制作出的節(jié)點列來輸出; 單數(shù)直線近似部,在所述直線判定部中判定為能夠用直線近似的情況下,輸出用I條直線對由通過所述控制點列制作部制作出的控制點列形成的曲線進行近似而制作出的節(jié)點列;以及 曲線近似節(jié)點登記部,將來自所述后半曲線近似部的節(jié)點列、或者來自所述單數(shù)直線近似部的節(jié)點列作為曲線近似節(jié)點列而登記到曲線近似節(jié)點列存儲部。
      3.根據(jù)權利要求1所述的字符串配置裝置,其特征在于, 字符串配置處理部具備: 曲線近似節(jié)點列獲取部,從曲線近似節(jié)點列存儲部獲取字符串所沿著的節(jié)點列; 字符串配置計算部,根據(jù)通過所述曲線近似節(jié)點列獲取部獲取的曲線近似節(jié)點列,計算字符串的配置位置; 輸出字符串配置存儲部,保存字符串的配置位置;以及 字符串配置登記部,將通過所述字符串配置計算部計算出的字符串的配置位置登記到所述輸出字符串配置存儲部。
      4.根據(jù)權利要求3所述的字符串配置裝置,其特征在于, 字符串配置計算部具備:線路角度計算部,根據(jù)通過曲線近似節(jié)點列獲取部獲取的曲線近似節(jié)點列,計算在各節(jié)點中由線路形成的線路角度; 字符配置部,根據(jù)在所述線路角度計算部中計算出的線路角度,配置字符; 字符線路外判定部,判定通過所述字符配置部配置的字符是否處于線路外; 重疊判定部,在通過所述字符線路外判定部判定為不處于線路外的情況下,判定字符彼此是否重疊; 參數(shù)更新部,根據(jù)所述重疊判定部中的判定結(jié)果,更新參數(shù);以及字符數(shù)判定部,根據(jù)通過所述參數(shù)更新部更新后的參數(shù),判定是否達到既定的字符數(shù),在判定為達到既定的字符數(shù)的情況下結(jié)束處理。
      5.根據(jù)權利要求4所述的字符串配置裝置,其特征在于, 字符配置部具備: 初始字符判定部,判定根據(jù)通過線路角度計算部計算出的線路角度配置的字符是否為字符串中的第I個字符; 字符左下坐標計算部,根據(jù)所述初始字符判定部中的判定結(jié)果,計算字符的左下坐標; 字符配置位置決定部,根據(jù)通過所述初始字符判定部得到的判定結(jié)果或者通過字符左下坐標計算部計算出的字符的左下坐標,決定字符的配置位置;以及 下一字符配置距離更新部,根據(jù)通過所述字符左下坐標計算部計算出的字符的左下坐標,決定直至下一字符為止的距離。
      【文檔編號】G06T11/60GK103430226SQ201180069255
      【公開日】2013年12月4日 申請日期:2011年3月14日 優(yōu)先權日:2011年3月14日
      【發(fā)明者】宮本健 申請人:三菱電機株式會社
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1