競速類體育項目比賽配置的生成方法和成績數據錄入方法
2023-08-22 13:35:46 1
專利名稱:競速類體育項目比賽配置的生成方法和成績數據錄入方法
技術領域:
本發明涉及計算機信息處理領域,尤其涉及ー種競速類體育項目比賽配置的生成方法和成績數據錄入方法。
背景技術:
競速類體育項目是指參賽運動員或參賽隊從某ー出發點出發,完成一定的比賽距離,以通過終點時用時最少的運動員或參賽隊為獲勝者的比賽。對於競速類體育項目,不僅需要記錄終點時間成績以決定運動員的最終排名,也需要記錄中間計時點的時間成績,並且將此信息提供給相關方,供裁判判罰、電視直播、t匕賽現場解說等使用。因此競速類體育項目需要記錄和保存中間成績和最終成績,一般會在 賽段中設置若干個計時點,以記錄運動員到達該計時點時已經用的比賽時間。隨著現代計算機技術的發展,在各類體育比賽中,越來越多的利用電腦程式來管理比賽,處理比賽數據,這不僅使比賽數據的處理更加快速和便捷,也簡化了工作人員的工作量。然而,現代的競速類比賽成績處理系統通常都是針對每ー個體育項目,編寫ー個比賽軟體,這個比賽軟體只能應用於ー種體育項目。本領域還沒有ー種適用於競速類體育賽事的通用的計時點配置方法,能夠滿足多種類型競速類體育項目的比賽需要,方便靈活地配置計時點的數量和屬性。
發明內容
因此,本發明的目的是提供ー種通用的競速類體育項目比賽配置的生成方法,其生成的計時點配置能夠滿足多種類型競速類體育項目對於配置計時點的數量和屬性的不同需要。本發明提供ー種競速類體育項目比賽配置的生成方法,包括接收用戶對計時點的操作數據;計時點的操作數據包括計時點操作類型和計時點屬性值;所述計時點操作類型包括増加計時點、插入計時點、刪除計時點和修改已有的計時點的屬性;所述計時點屬性包括用於區分比賽的比賽標識,用於區分計時點的計時點標識,用於計算速度的計時點距離出發點的距離;如果計時點操作類型為増加計時點、插入計時點或修改已有的計時點的屬性,按照計時點的操作數據生成計時點配置。可選的,所述計時點屬性還包括計時點的順序號,用於表示計時點的先後順序;設備配置位,用於將計時設備發送的成績數據與用戶設置的計時點一一對應起來;計時點類型,包括中間點計時點、環形賽道入口點計時點、整圈計時點以及終點計時點;和計時點名稱。可選的,按照計時點的操作數據生成計時點配置包括如果計時點操作類型為增加計時點,則在資料庫的計時點數據表中新生成一條記錄,並將接收到的計時點屬性值填充到這條記錄的對應欄位中;如果計時點操作類型為在已有計時點中間插入一個計時點,則在資料庫的計時點數據表中新生成一條記錄,並將計時點的屬性值填充到這條記錄的對應欄位中,然後對插入計時點位置之後的所有計時點的順序號都加I;如果計時點操作類型為刪除計時點,如果刪除的是順序號在最後的一個計時點,則把資料庫的計時點數據表中對應的記錄刪除;如果刪除的是中間的一個計時點,則把資料庫的計時點數據表中對應的記錄刪除,並且對刪除計時點位置之後的所有計時點的順序號都減I;如果計時點操作類型為修改已有的計時點的屬性,則將用戶輸入的計時點屬性值更新到資料庫中對應的記求。可選的,在接收用戶對計時點的操作數據後,還包括依賴計時點的基本數據接收用戶對賽段的操作數據;賽段的操作數據包括賽段操作類型和賽段屬性值;所述賽段操作類型包括增加賽段、插入賽段、刪除賽段和修改已有的賽段的屬性;賽段屬性包括用於區分比賽的比賽標識,用於區分賽段的賽段標識,數值來源於計時點標識的賽段開始點,數值來源於計時點標識的賽段結束點;按照賽段的操作數據生成賽段配置。可選的,所述計時點屬性還包括計時點的順序號,用於表示計時點的先後順序; 設備配置位,用於將計時設備發送的成績數據與用戶設置的計時點一一對應起來;計時點類型,包括中間點計時點、環形賽道入口點計時點、整圈計時點以及終點計時點;和計時點名稱;所述賽段屬性還包括賽段的順序號,用於表示賽段的先後順序。可選的,按照計時點的操作數據生成計時點配置包括如果計時點操作類型為增加計時點,則在資料庫的計時點數據表中新生成一條記錄,並將接收到的計時點屬性值填充到這條記錄的對應欄位中;如果計時點操作類型為在已有計時點中間插入一個計時點,則在資料庫的計時點數據表中新生成一條記錄,並將計時點的屬性值填充到這條記錄的對應欄位中,然後對插入計時點位置之後的所有計時點的順序號都加I;如果計時點操作類型為刪除計時點,如果刪除的是順序號在最後的一個計時點,則把資料庫的計時點數據表中對應的記錄刪除;如果刪除的是中間的一個計時點,則把資料庫的計時點數據表中對應的記錄刪除,並且對刪除計時點位置之後的所有計時點的順序號都減I;如果計時點操作類型為修改已有的計時點的屬性,則將用戶輸入的計時點屬性值更新到資料庫中對應的記求。可選的,按照賽段的操作數據生成賽段配置包括如果所述操作類型為增加賽段,則在資料庫的賽段數據表中新生成一條記錄,並將接收到的賽段屬性值填充到這條記錄的對應欄位中;如果操作類型為在已有賽段中間插入ー個賽段,則在資料庫的賽段數據表中新生成一條記錄,並將賽段的屬性值填充到這條記錄的對應欄位中,然後對插入賽段位置之後的所有賽段的順序號都加I;如果操作類型為刪除賽段,如果刪除的是順序號在最後的ー個賽段,則把資料庫的賽段數據表中對應的記錄刪除;如果刪除的是中間的ー個賽段,則把資料庫的賽段數據表中對應的記錄刪除,並且對刪除賽段位置之後的所有賽段的順序號都減I;如果操作類型為修改已有的賽段的屬性,則將用戶輸入的賽段屬性值更新到資料庫中對應的記錄。可選的,所述接收用戶對計時點的操作數據包括先從資料庫中取出已經配置好的計時點信息,並放在計時點數據結構中;這些數據結構數據被存放在一條鍊表中;鍊表中數據的放置位置依據計時點順序號從小到大排列,從鍊表頭指向鍊表尾;根據操作類型,在當前數據基礎上進行計時點的増加、刪除和修改等鍊表操作。
可選的,所述按照計時點的操作數據生成計時點配置包括遍歷鍊表找到所有存在標識的計時點;用資料庫中的計時點數據和鍊表中存在標識的計時點數據進行比較;如果在資料庫中找到了和鍊表中同樣標識的計時點,則將鍊表中的計時點的屬性更新在相應的資料庫中的計時點上;如果資料庫中的計時點沒有在鍊表上找到對應得計時點,刪除資料庫中的該計時點;遍歷鍊表找到所有沒有標識號的計時點,將這些計時點添加到資料庫中;資料庫在増加這些計時點時,給每一個計時點分配ー個全局唯一的標識號。可選的,在接收用戶對計時點的操作數據後,還包括依賴計時點的基本數據接收用戶對賽段的操作數據;賽段的操作數據包括賽段操作類型和賽段屬性值;所述賽段操作類型包括增加賽段、插入賽段、刪除賽段和修改已有的賽段的屬性;賽段屬性包括用於區分比賽的比賽標識,用於區分賽段的賽段標識,數值來源於計時點標識的賽段開始點,數值來源於計時點標識的賽段結束點;按照賽段的操作數據生成賽段配置。可選的,所述接收用戶對計時點或賽段的操作數據包括先從資料庫中取出已經配置好的計時點或賽段信息,並放在計時點或賽段數據結構中;有多少個計時點或賽段信息,就有多少個這樣的數據結構數據;這些數據結構數據被存放在一條鍊表中;鍊表中數據的放置位置依據計時點或賽段順序號從小到大排列,從鍊表頭指向鍊表尾;根據操作類 型,在當前數據基礎上進行計時點或賽段的増加、刪除和修改等鍊表操作。可選的,所述按照計時點的操作數據生成計時點配置包括遍歷鍊表找到所有存在標識的計時點;用資料庫中的計時點數據和鍊表中存在標識的計時點數據進行比較;如果在資料庫中找到了和鍊表中同樣標識的計時點,則將鍊表中的計時點的屬性更新在相應的資料庫中的計時點上;如果資料庫中的計時點沒有在鍊表上找到對應得計時點,刪除資料庫中的該計時點;遍歷鍊表找到所有沒有標識號的計時點,將這些計時點添加到資料庫中;資料庫在増加這些計時點時,給每一個計時點分配ー個全局唯一的標識號。可選的,所述按照賽段的操作數據生成賽段配置包括遍歷鍊表找到所有存在標識的賽段;用資料庫中的賽段數據和鍊表中存在標識的賽段數據進行比較;如果在資料庫中找到了和鍊表中同樣標識的賽段,則將鍊表中的賽段的屬性更新在相應的資料庫中的賽段上;如果資料庫中的賽段沒有在鍊表上找到對應得賽段,刪除資料庫中的該賽段;遍歷鍊表找到所有沒有標識號的賽段,將這些賽段添加到資料庫中;資料庫在増加這些賽段吋,給每ー個賽段分配ー個全局唯一的標識號;更新賽段信息時,將鍊表數據結構中的起、終點順序號進行了轉換,轉換為起終點標識號,然後存儲在資料庫中。轉換方法是資料庫查詢基本計時點信息中哪ー個計時點的順序號和賽段起點、終點順序號一祥,找到後就將該計時點的標識號返回,然後該標識號就被存放在資料庫表賽段信息中的開始點或結束點中。本發明還提供一種基於競速類體育項目比賽配置信息的成績數據錄入方法,比賽配置信息包括計時點信息和賽段信息,所述計時點信息包括比賽標識,用於區分比賽;計時點標識,用於區分計時點;計時點距離出發點的距離,用於計算速度;和計時點精度;所述賽段信息包括比賽標識,用於區分比賽;賽段標識,用於區分賽段;賽段開始點,數值來源於計時點標識;和賽段結束點,數值來源於計時點標識;所述成績數據錄入方法包括獲取該運動員或參賽隊的計時點的成績;根據配置的計時點信息,查詢收到的成績數據是哪一個計時點的數據;根據找到的計時點結合成績信息中包含的運動員或參賽隊的標識,在結果表中找到相應的記錄位置並把成績更新到該記錄;根據配置的賽段信息,查詢收到的成績數據是否屬於某ー個或多個賽段的邊界點;如果屬於某個或某些賽段的邊界點,找到賽段所對應的起點計時點和終點計時點,並在結果表中提取運動員或參賽隊該賽段的起點成績和終點成績,兩個成績相減得到賽段成績,然後將賽段成績更新到結果表運動員或參賽隊所對應得賽段成績記錄中。與現有技術相比,本發明的優點在於1.通過定義計時點、賽段的配置數據結構,將競速類體育項目共有屬性提取出來,為通用的比賽配置的生成方法提供了基礎。2.通過比賽配置生成方法生成多種競速類體育賽事通用的比賽配置,避免了開發多種比賽軟體。
以下,結合附圖來詳細說明本發明的實施例,其中圖I是為公路自行車項目的ー種典型比賽路線的示意圖;圖2是本發明的一個實施例中提供的競速類體育項目計時點配置的生成方法的 流程圖;圖3是本發明另ー個實施例中計時點屬性配置頁面的示意圖;圖4是本發明再一個實施例中配置結果的示意圖;圖5是本發明又一個實施例中提供的競速類體育項目比賽配置的生成方法的流程圖;圖6是本發明又一個實施例中成績數據示意圖;圖7是本發明又一個實施例中計時點數據結構示意圖;圖8是本發明又一個實施例中從資料庫中取出已經配置好的計時點信息,並放在計時點數據結構中的結果示意圖;圖9-圖10是本發明又一個實施例中插入計時點操作的過程示意圖;圖11是本發明又一個實施例中賽段數據結構示意圖;圖12是本發明又一個實施例中提供的基於比賽配置的成績數據錄入方法的流程圖。
具體實施例方式對於不同類型的競速類體育項目,所需要設置的計時點的數量是不同的,例如1000米賽艇項目,可能是每隔250米設ー個計時點,這樣總共有250米、500米、750米和1000米即終點共4個計時點,而百米賽跑只會設置100米終點ー個計時點。即使是同一種類型的體育項目,在不同的賽事裡,計時點的數量設置也可能是不同的。例如山地自行車項目,需要運動員在規定的山地環形賽道騎行一定的圈數以完成比賽,如果賽道每圈的長度比較短,可能騎行的圈數要多ー些,如果賽道每圈的長度比較長,可能騎行的圈數要少ー些,而通常設置計時點是以整圈或半圈為依據的,所以賽道的情況會對計時點數量的設置有直接影響;而且到其它的山地賽道比賽時,計時點的數量的設置還需要根據實際情況調整。也就是說,有些體育項目的計時點的數量是不固定的,要根據比賽場地的實際情況來確定。需要說明的是,本發明中的計時點指邏輯計時點,即計時點的數量指的是記錄運動員比賽中各個計時點時間成績的數量,而不是實際物理的計時點的數量。例如,某山地自行車比賽,需要騎行8圈,可以在賽道上設置ー個物理的計時點,這個計時點記錄運動員每ー圈到達該點的時間,這樣ー個物理的計時點就記錄了每個運動員過該點的所有次數共8次的時間成績,因此雖然只有ー個物理的計時點,但我們要將其看成8個計時點。 需要說明的是,本發明中的比賽配置包括比賽中計時點配置和賽段配置。需要說明的是,本發明中的配置計時點與生成計時點的配置,是對於同一個過程不同角度的描述;配置計時點是動作,生成計時點的配置是結果。對競速類體育項目設計通用的計時點配置的生成方法,首先需要對競速類比賽的特點進行分析。通過分析可以發現不同類型競速類比賽的公共屬性I)都要比賽一定的距離;2)都有比賽終點;3)在比賽的起點和終點之間,存在零個或多個中間計時點;4)有若干種不同類型的計時點;5)計時點的成績需要以一定的精度展現;6)除了需要展現各個計時點的時間成績,可能還需要展現特定距離間的時間成績(即賽段的成績),如山地自行車項目,需要展示運動員每一整圈所花的淨時間。具體的,對於公共屬性I)都要比賽一定的距離,這要求在配置計時點時指出計時點與起點之間的距離,有了距離和運動員或參賽隊到達計時點的時間成績,就能計算出速度,有些體育比賽項目是需要速度信息的。對於公共屬性2)都有比賽終點,這要求在配置比賽時至少需要配置終點計時點,否則最重要的終點成績是得不到的。對於公共屬性3)在比賽的起點和終點之間,存在零個或多個中間計時點,指根據比賽要求,需要能配置特定數量的中間計時點,由中間計時點和終點一起,就構成了全部需要配置的計時點。對於公共屬性4)有若干種不同類型的計時點,指需要根據不同比賽和相同比賽的不同要求,例如賽車類項目的賽道情況,設置不同數量和不同類型的計時點。本發明的一些實施例中,將計時點的類型分為四種中間點計時點(SPLIT),環形賽道入口點計時點(PTP,Point-To-Point),整圈計時點(LAP)和終點計時點(FINISH)。一般的競速類比賽的計時點主要有兩種=SPLIT和FINISH,終點的類型是FINISH,其它中間計時點配置為SPLIT類型,但當有些競速類項目的賽道有環形賽道入ロ點和整圈計時點吋,還要配置PTP類型和LAP類型。如圖I所示,為公路自行車項目的ー種典型比賽路線,起點為A,終點為B,兩條豎線分別表示起點線和終點線,曲線表示比賽路徑。運動員從起點A出發,沿著曲線騎行,到達環形賽道入ロ點後,進入環形賽道,騎行一定的圈數,最後通過終點B完成比賽。該賽道包括了所有類型的計時點。之所以要給計時點指定不同的類型,ー是反映賽道的實際情況,ニ是可以在已經存儲的計時點成績中提取用戶關心類型的計時點的數據。對於公共屬性5),計時點的成績需要以一定的精度展現,指有些競速類項目的成績展現的精度較低,如馬拉松項目,只需精確到秒位;而有些項目則需要高精度,如Fl賽車,精度為O. OOl秒。對於公共屬性6),除了需要展現各個計時點的時間成績,可能還需要展現特定距離間的時間成績(即賽段的成績),指比賽要求展現哪些賽段的成績,就需要配置上相應賽段信息,以使這些賽段的成績可以被計算並被存儲。例如對山地自行車項目,需要知道運動員騎行某一圈所花的時間,就需要設置每一圈的賽段。當然,不是所有競速類項目都需要配置賽段,例如對賽艇項目,不需要知道某兩個計時點之間的距離所花的時間。例如,對於自行車相關的比賽項目,需要展示運動員每一整圈所花的淨時間,所以這些整圈的信息需要被配置,當運動員到達某個中間計時點時,正好該中間計時點也是圈的終點,除了運動員該計時點的成績被存儲外,還將計算該計時點與本圈起點之間的時間差以得到本圈的淨時間,然後存儲。應該計算和存儲哪些賽段的成績,需要以賽段配置信息為依據。基於上述的對於競速類體育項目公共屬性的分析,為了使對計時點的描述統一、 具有通用性,本發明提供了ー種表結構,用於表示計時點的配置數據,表中數據欄位包括(I)Match-ID,比賽標識;用於區分比賽;(2) Split-ID,計時點標識;用於區分計時點;(3) Split-Type,計時點類型;(4) Split-Distance,計時點距離出發點的距離;用於計算速度;(5) Split-Name,計時點名稱;用於程式設計師和管理員識別;(6) Split-Precision,計時點精度。計時點標識是添加或插入計時點時自動生成的INT型(整型)數據;為了更方便的記錄和讀取計時點的先後邏輯順序,可以使用另ー個欄位來保存計時點的先後順序。例如某類型比賽調整比賽安排,需要在第I個計時點和第2個計時點之間再插入一個計時點,原來計時點的標識分別為I和2,新插入的計時點為3,插入3後它們的先後邏輯順序是1、3、2,插入的點『3』變成了第2個計時點,而原來的第2個點『2』變成了第3個點,這樣在直接利用這些欄位配置賽段時就很容易出錯,而它們的順序號是1、2、3,而如果利用有先後順序的數據更符合思維習慣,不易混亂和出錯。而且,從資料庫提取數據時,很可能需要提取特定計時點的數據,比如需要邏輯上第3個計時點的數據,而第3個計時點的標識不一定就是計時點標識3對應的計時點,所以可以順序號為參數,通過順序號找到標識號,進而通過標識號找到數據。所以,表中數據欄位還包括(7) Split-Order,計時點的順序號,這個順序號是在計時點配置過程中自動生成的,並可以根據計時點的配置情況自動調整。本發明其他實施例中,該順序號所表示的邏輯順序,也可以通過在毎次操作完成計時點後,重新排列計時點標識實現。所以該欄位並不是必須的,但是能夠避免上述重新排列過程。另外,任意ー個運動員的任意一個計時點的成績被計時設備發送過來吋,一般包含三種信息運動員標識、計時點標識和成績。由於不同計時設備發送過來的計時點標識的表示方式可能是不一樣的,而且一般是硬體設備中的硬編碼,不易修改。所以一般讓計時點的數據結構適應設備。
在配置計時點時,需要針對本次比賽的設備,配置邏輯計時點和物理計時點(即計時設備)之間的對應關係。所以,表中數據欄位還包括(S)Split-Device,設備配置位;用於將計時設備發送的成績數據與用戶設置的計時點一一對應起來。例如某種設備發送的第1、2、3個計時點的成績信息中的計時點標識是S1、S2、S3,當計時點S2的成績到來時,程序先遍歷各個計時點的Split-Device屬性中是否有S2,結果發現第二個計時點配置的設備配置位是S2,於是程序就知道,這個成績是第二個計時點的成績。本發明其他實施例中,計時設備的標識也可以與上述計時點標識的表示方式相同;或者通過其他第三方設備,進行轉換後,與上述計時點標識的表示方式相同。所以該欄位並不是必須的。設備配置位可以省卻第三方設備轉換的麻煩,因為計時設備有很多種,發 過來得設備標識也是千差萬別,不能針對每一種設備都寫轉換程序,而通過設備配置位就解決了所有問題。即通過設備配置位的靈活可配置性來屏蔽計時設備的類型多祥性。通過上述表結構,可以將競速類體育項目通用的計時點的屬性完整的表現出來,建立統ー的數據描述方式供後續操作使用。依據上述計時點的數據表結構,本發明的一個實施例中提供了ー種競速類體育項目計時點配置的生成方法。該方法如圖2所示,包括S101,接收用戶對計時點的操作數據;操作數據包括操作類型和計時點屬性值;操作類型包括増加計時點、插入計時點、刪除計時點和修改已有的計時點的屬性;S102,按照所述操作數據生成計時點配置。具體的,在步驟S102中,如果操作類型為増加計時點,則在資料庫的計時點數據表中新生成一條記錄,並將接收到的計時點屬性值填充到這條記錄的對應欄位中。如果操作類型為在已有計時點中間插入一個計時點,則在資料庫的計時點數據表中新生成一條記錄,並將計時點的屬性值填充到這條記錄的對應欄位中,然後對插入計時點位置之後的所有計時點的順序號Split-Order做出調整——順序號都加I。如果操作類型為刪除計時點,如果刪除的是順序號在最後的一個計時點,則把資料庫的計時點數據表中對應的記錄刪除;如果刪除的是中間的一個計時點,則把資料庫的計時點數據表中對應的記錄刪除,並且對刪除計時點位置之後的所有計時點的順序號Split-Order做出調整-順序號都減I。如果操作類型為修改已有的計時點的屬性,則將用戶輸入的計時點屬性值更新到資料庫中對應的記錄。在本發明ー個實施例中,為用戶提供計時點屬性配置頁面,如圖3所示,其中包括操作類型選擇欄(右鍵彈出),用於接收用戶的輸入。在本發明的其他實施例中,還可以提供Excel表倒入等批量輸入方式。本領域的技術人員可以理解,不同的輸入方式都可以獲取上述的所需的數據。操作完成後的結果如圖4所示,得到的數據表的前6行即計時點配置。詳細的操作過程請見後面實施例。最後,根據生成的計時點配置結合該場比賽的參賽選手的數量,在資料庫中生成各個計時點成績的存儲空間。在本發明的其他實施中,也可以根據生成的計時點配置結合該場比賽的參賽選手的數量,在資料庫中生成各個參賽運動員成績的存儲空間。總的記錄數量與本實施的上述方法是ー樣的。例如山地自行車,20人參賽,騎行8個計點,在成績表中預先生成20x8 = 160條記錄,姆一條記錄用來存儲將來某運動員到達某計時點時的成績(這些成績來自計時設備)。基於上述的對於競速類體育項目公共屬性的分析,進ー步的,對某些競速類比賽項目,還可以對特定賽段進行配置,以反映某一計時點與另ー計時點距離間的時間成績。本發明的另ー個實施例中設計了ー種表結構,用於表示計時點以及賽段的配置數據,表中數據欄位包括(l)Match-ID,比賽的標識;(2) Split-ID,計時點或賽段標識;(3)Split-Type,計時點或賽段類型;其中賽段的類型有兩種一般賽段(RANGE)和圈賽段(LAP) ;LAP指賽段是一個完整圏,RANGE是指通常意義上的ー個賽段;
(4) Split-Order,計時點或賽段的順序號;(5)Split-DistanCe,計時點距離出發點的距離,由於賽段是基於計時點配置的,知道了兩個計時點距離出發點的距離,也就知道了這兩個計時點之間的距離-即賽段的長度,因此不需要設置賽段的距離;(6) Split-Name,計時點或賽段的名字;(7)Split-DeViCe,計時點設備配置位;賽段沒有設備配置位,因為賽段的成績是依據計時點的成績算出來的,只要得到某ー計時點成績,就可以算出賽段成績並進行保存;(8) Split-Precision,計時點或賽段精度;(9) Start-Split-ID和(10)End-Split_ID,賽段的開始點和結束點,數值來源於計時點的標識Split-ID ;Start-Split-ID和End-Split-ID屬性只有賽段才需要設置。其中當Start-Split-ID的取值為-I時指的是與比賽起點之間的賽段。(11) Start-Order和(12) End-Order,表示賽段的開始點順序號和結束點順序號,Start-Order 和 End-Order 的值來源於 Split-Order 欄位。其中對於賽段的類型的區分,只要不是ー個整圈的任意一個賽段都可以設置為RANGE。RANGE和LAP之間可以是包含的關係也可以是交叉關係,取決於比賽實際需要。例如鐵人三項比賽,運動員需要從出發點開始順序完成三項體育項目,遊泳、自行車、跑步,整個比賽過程中運動員不能休息,需要不間斷的完成,完成比賽所花時間最少的是勝利者。通常遊泳、自行車和跑步各個賽段是由一定的圈數組成的,北京奧運會鐵人三項項目的遊泳I圈,自行車6圈,跑步4圈,在配置賽段時會依據姆ー圈配置一條賽段信息(類型為LAP),但是,除了關注運動員在每ー圈的淨成績,還需要關注運動員在每ー個單項賽段的淨成績,所以還要再配置每ー個單項的賽段,如跑步的賽段就反映整個跑步階段的淨時間,這時賽段的類型是RANGE,而這個賽段將包括所有的跑步圈數。以上說的是包含關係的ー個例子。當然,還有可能兩者之間是交叉關係,比如前一圈的某個點和後ー圈的某個點之間的賽段是有意義的,這時賽段的類型是RANGE,但它包括的是前ー圈的一部分和後ー圈的一部分,因此與前後圈都有交集。所以通常RANGE和LAP兩種類型來表示賽段就足夠了,只是LAP強調這種賽段是ー個圈而已,至於設置賽段應該選擇何種類型,完全取決於比賽的實際情況和自己的需要。
需要說明的是賽段配置時沒有Split-Distance和Split-Device屬性,原因是賽段的成績不是設備發送過來的。而是在設備發送過來計時點的成績以後,根據計時點的成績計算出來的。設備不發送賽段的成績,所以也不需要給賽段配置設備配置位屬性。計時點的屬性裡包含距離欄位,所以賽段的長度可以根據賽段起、終計時點的距離欄位計算出來,不用填充賽段長度屬性。如圖5所示,結合上述的表結構,該實施例的競速類體育項目比賽配置(包括計時點和賽段配置)的生成方法包括S401,接收用戶對計時點的操作數據;S402,依賴接收到的對計時點的操作數據,接收用戶對賽段的操作數據;S403,按照所述操作數據生成計時點配置和賽段配置。
其中,計時點相關的步驟的內容與上述的SlOl S102相同,這裡不再贅述。接收用戶對賽段的操作數據的方法也與計時點相似,如圖3所示,本實施例中如下首先,手動設置計時點(圖中上半部分),右擊滑鼠在圖中增加、刪除或插入計時點,每一行就是ー個計時點,雙擊計時點的屬性進行編輯,包括計時點的名字,計時點距離起點的距離,計時點的類型,計時點的精度,計時點的設備配置位,計時點全局唯一的順序號,這個順序號是按照計時點的邏輯順序増大的,例如當點配置了兩個計時點,第一個計時點的順序號是1,第二個是2,在這兩個計時點之間插入ー個計時點時,插入點的順序號是2,而原來順序號為2的計時點的順序號自動變為3。然後,進行賽段配置(在圖中下半部分),下半部分的配置方式和上述類似。圖中下半部分的第2行Section2的Start-Order和End-Order分別設置為I和2,那麼它們對應的是上半部分的第I個計時點和第2個計時點,也就是說,下半部分第2行Section2所表示的是Lapl和Lap2這兩個計時點之間的賽段;如果Start-Order的值為O,表示的是與整個比賽起點之間的賽段。最後,點擊Ok按鈕確定,以上的配置信息就會被存儲到資料庫中。步驟S403中按照所述操作數據生成賽段配置的過程與S102相似,只是需要先將計時點輸入數據更新到資料庫中,生成計時點配置,然後再將賽段信息更新到資料庫中,生成賽段配置,因為賽段信息的更新依賴於資料庫中計時點的信息。結果如圖4所示,其中前6行是計時點配置,後6行就是賽段配置。其中第10條記錄表示賽段Section4,該賽段的起終點標識分別是4、5,表示是4、5的計時點分別是圖3中的第3條記錄合第4條記錄(因為Split-ID是4和5),所以該賽段代表的是Lap3和Lap4之間的距離。用戶可以根據需要配置任意兩個計時點之間的賽段,只要在新配置的賽段起終點欄位中,填上想要的計時點的起點和終點標識就可。最後,根據計時點與賽段的配置和參賽選手的數量在資料庫中生成各個計時點成績和賽段成績的存儲空間。在本發明的其他實施例中,也可以生成每個參賽選手的計時點成績和賽段成績的存儲空間。這兩種做法所生成的總的記錄的數量是ー樣的。例如山地自行車,20人參賽,騎行8圈,每圈一個計時點,同時保存每個運動員每ー圈的淨時間,則應該配置8個計時點和8個存儲每ー圈成績的8個賽段,程序會在計時點成績表中預先生成20x (8+8) = 320條記錄,姆一條記錄用來存儲將來某運動員到達某計時點時的成績或者是某運動員的某一賽段的成績。比賽過程中,使用上述空間存放計時點成績數據的結果如圖6所示。其中包含的欄位還包括F-Match-ID,某一場比賽的標識;F-Match-Split-ID,某場比賽中的計時點和賽段的標識;F-Competition-Position,參賽隊員或隊伍的出發位置;F-Register-ID,參賽隊員或參賽隊伍的標識;F-Points-CharDesl,參賽隊員或隊伍在計時點或賽段的時間成績;F-Rank,參賽隊員或隊伍在計時點或賽段的排名。 以最後一行記錄為例標識為5 (F-Register-ID)的運動員或參賽隊在標識為I (F-Match-ID)的比賽中的標識為5 (F-Match-Split-ID)的計時點的時間成績是1:22:19. 707,即I小時22分19. 707秒,在該計時點的排名是4。通過上述方法,各種類型競速體育中計時點的配置和賽段的配置都可以通過接收用戶的選擇和操作信息自動的生成。在本發明的又一個實施例中,定義ー種計時點數據結構,用於接收用戶的輸入,存放計時點的屬性信息。該數據結構如圖7所示,其數據成員包括標識、名字、類型、順序號、精度、距離和設備配置位。其含義與上述實施例中的數據表的相應欄位相同。基於上述數據結構,本實施提供了一種計時點配置的生成方法,包括S501,接收用戶對比賽的操作數據;S502,更新資料庫。具體的,S501接收用戶對比賽的操作數據包括接收用戶對計時點的操作數據,其過程為S5011,先從資料庫中取出已經配置好的計時點信息,並放在計時點數據結構中;有多少個計時點信息,就有多少個這樣的數據結構數據。這些數據結構數據被存放在一條鍊表中;鍊表中數據的放置位置依據計時點順序號從小到大排列,從鍊表頭指向鍊表尾。如圖8所示,計時點I中的順序號是1,計時點N中的順序號是N。本領域的技術人員可以理解,本實施例中的鍊表存儲結構可以用數組存儲結構或其他可以達到相同目的的存儲結構替代。S5012,根據操作類型,在當前數據基礎上進行計時點的増加、刪除和修改等操作。其內容與上述步驟S102相似。以插入計時點為例,例如需要在計時點2和計時點3之間插入ー個新計時點,數據的處理過程和結果如圖9-10所示;這時候,新計時點的順序號變為3,而新計時點之後的所有計時點順序號都需要加I。刪除過程與之相反。修改過程中,計時點的標識號和順序號不能手動修改,其為自動生成。經過很多次操作後,計時點的配置信息已經滿足用戶的要求。配置信息接收完成之後,需要對資料庫進行更新,將新的計時點配置保存在資料庫中。由於鍊表中的計時點數據有兩類新増加的和原有的計時點(區別在於新増加的計時點沒有標識號),所以更新資料庫的操作要分兩步S5021,遍歷鍊表找到所有存在標識號的計時點,然後用資料庫中的計時點數據和鍊表中存在標識號的計時點數據進行比較,如果在資料庫中找到了和鍊表中同樣標識號的計時點,則將鍊表中的計時點的屬性更新在相應的資料庫中的計時點上;如果資料庫中的計時點沒有在鍊表上找到對應得計時點,這說明鍊表中該計時點已經在剛才配置計時點的過程中被刪除,所以資料庫中的該計時點也應執行刪除操作,更新資料庫。S5022,遍歷鍊表找到所有沒有標識號的計時點,這些計時點,是操作者新増加的計時點,資料庫中一定不存在,所以要將這些計時點添加到資料庫中。資料庫在増加這些計時點時,給姆ー個計時點分配ー個全局唯一的標識號。通過以上操作,計時點的信息就被完整地更新到了資料庫中。新的計時點配置保存在資料庫中。在本發明的又一個實施例中,首先定義ー種計時點和賽段數據結構,用於接收用戶的輸入,存放計時點和賽段的屬性信息。基於上述數據結構,本實施提供了一種比賽配置的生成方法,包括 S601,接收用戶對比賽的操作數據;S602,更新資料庫。具體的,接收用戶對比賽的操作數據包括接收用戶對計時點的操作數據和用戶對賽段的操作數據。S601中計時點的數據結構操作方法和前一個實施例中所講的完全一致。賽段數據結構如圖11所示,包括標識、名字、類型、順序號、精度、起點順序號、終點順序號;其含義與上述實施例中的數據表的相應欄位相同。操作完計時點後,需要對賽段進行配置,賽段配置依賴於計時點數據。賽段配置的過程也和S501類似,只有一點不一樣的地方,那就是在賽段配置時需要填入賽段的起點和終點的計時點的順序號。S602中,在資料庫中更新計時點方法和上述S502所講的完全一致。在資料庫中更新完計時點後,需要更新賽段的配置信息,賽段配置信息的更新過程也和上述S502所講的類似,唯一不一樣的地方是更新賽段信息時,將鍊表數據結構中的起終點順序號進行了轉換,轉換為起終點標識號,然後存儲在資料庫中。轉換方法是資料庫查詢計時點信息中哪一個計時點的順序號和賽段起點、終點順序號一祥,找到後就將計時點的標識號返回,然後該標識號就被存放在資料庫表的Start-Split-ID或End-Split-ID中。通過以上操作,計時點和賽段的信息就被完整地更新到了資料庫中。新的計時點配置保存在資料庫中。例如,圖4是在圖3中的配置工作完成後,實際存儲在資料庫中的配置結果示意圖,可以看到圖3中配置了 6個計時點和6個賽段,6個計時點的信息存儲在圖4中的前6行,6個賽段的信息存儲在圖4中的後6行。可以在圖4中看到賽段的配置依賴於計時點的配置,例如圖4中賽段Section2所包含的是Split-ID為2與3的計時點之間的距離,Split-ID為2的計時點就是計時點Lapl,Split-ID為3的計時點就是計時點Lap2,所以賽段Section2就表示計時點Lapl與Lap2之間的距離。需要說明的是,圖3中所配置的賽段的起終點用的是計時點的順序號,而圖4中所表示的配置結果數據用的是計時點的標識,程序將圖3中的配置內容存儲成數據時做了映射轉換,根據計時點順序號找到對應的計時點標識,然後進行存儲。原因是用戶進行賽段配置操作時,使用計時點順序號更方便,而程序在處理數據時,使用計時點的標識更方便。
通過使用上述實施例中提供的競速類體育的比賽配置或者計時點配置的生成方法,對計時點和賽段進行配置,不僅可以配置任意數量的計時點,也可以依據計時點配置任意數量的賽段,從而為競速類體育的比賽設置提供了很大的方便性與靈活性。本發明再一個實施例中,針對上述實施例中開闢的成績空間,提供了一種基於比賽配置的成績數據錄入方法。如圖12所示,該方法包括S701,獲取該運動員或參賽隊的該計時點的成績;某ー運動員或隊伍經過某計時點時,計時設備獲取該運動員或參賽隊的該計時點的成績;S702,根據配置的計時點信息,查詢收到的成績數據是哪ー個計時點的數據;S703,根據找到的計時點結合成績信息中包含的運動員或參賽隊的標識,在結果表中找到相應的記錄位置並把成績更新到該記錄;S704,根據配置的賽段信息,查詢收到的成績數據是否屬於某ー個或多個賽段的 邊界點;S705,如果屬於某個或某些賽段的邊界點,找到賽段所對應的起點計時點和終點計時點,並在結果表中提取運動員或參賽隊該賽段的起點成績和終點成績,兩個成績相減得到賽段成績,然後將賽段成績更新到結果表運動員或參賽隊所對應得賽段成績記錄中。本領域技術人員可以理解,上述包括計時點配置、賽段配置的比賽配置以及成績數據既可以通過資料庫保存,也可以通過文件保存,並沒有改變本法的思想。雖然以上描述了本發明示例性的實施例,但是可以理解的是,各種變型對於本領域技術人員來說是顯而易見的。這種變型落入本發明的精神和範圍內,本發明的精神和範圍內只由權利要求來限定和定義。雖然此處通過參考附圖詳細描述了本發明的示例性實施例,但是可以理解的是,本發明不限於這些具體實施例,且本領域技術人員可以不背離由權利要求書定義的本發明的範圍和精神而做出各種改變和變型。
權利要求
1.ー種競速類體育項目比賽配置的生成方法,其特徵在於,包括 接收用戶對計時點的操作數據;計時點的操作數據包括計時點操作類型和計時點屬性值;所述計時點操作類型包括増加計時點、插入計時點、刪除計時點和修改已有的計時點的屬性;所述計時點屬性包括用於區分比賽的比賽標識,用於區分計時點的計時點標識,用於計算速度的計時點距離出發點的距離; 如果計時點操作類型為増加計時點、插入計時點或修改已有的計時點的屬性,按照計時點的操作數據生成計時點配置。
2.根據權利要求I所述的競速類體育項目比賽配置的生成方法,其特徵在於,所述計時點屬性還包括 計時點的順序號,用於表示計時點的先後順序; 設備配置位,用於將計時設備發送的成績數據與用戶設置的計時點一一對應起來; 計時點類型,包括中間點計時點、環形賽道入口點計時點、整圈計時點以及終點計時點;和 計時點名稱。
3.根據權利要求2所述的競速類體育項目比賽配置的生成方法,其特徵在幹,按照計時點的操作數據生成計時點配置包括 如果計時點操作類型為増加計時點,則在資料庫的計時點數據表中新生成一條記錄,並將接收到的計時點屬性值填充到這條記錄的對應欄位中; 如果計時點操作類型為在已有計時點中間插入一個計時點,則在資料庫的計時點數據表中新生成一條記錄,並將計時點的屬性值填充到這條記錄的對應欄位中,然後對插入計時點位置之後的所有計時點的順序號都加I ; 如果計時點操作類型為刪除計時點,如果刪除的是順序號在最後的一個計時點,則把資料庫的計時點數據表中對應的記錄刪除;如果刪除的是中間的一個計時點,則把資料庫的計時點數據表中對應的記錄刪除,並且對刪除計時點位置之後的所有計時點的順序號都減I ; 如果計時點操作類型為修改已有的計時點的屬性,則將用戶輸入的計時點屬性值更新到資料庫中對應的記錄。
4.根據權利要求I所述的競速類體育項目比賽配置的生成方法,其特徵在幹,在接收用戶對計時點的操作數據後,還包括 依賴計時點的基本數據接收用戶對賽段的操作數據;賽段的操作數據包括賽段操作類型和賽段屬性值;所述賽段操作類型包括增加賽段、插入賽段、刪除賽段和修改已有的賽段的屬性;賽段屬性包括用於區分比賽的比賽標識,用於區分賽段的賽段標識,數值來源於計時點標識的賽段開始點,數值來源於計時點標識的賽段結束點; 按照賽段的操作數據生成賽段配置。
5.根據權利要求4所述的競速類體育項目比賽配置的生成方法,其特徵在於 所述計時點屬性還包括計時點的順序號,用於表示計時點的先後順序;設備配置位,用於將計時設備發送的成績數據與用戶設置的計時點一一對應起來;計時點類型,包括中間點計時點、環形賽道入ロ點計時點、整圈計時點以及終點計時點;和計時點名稱; 所述賽段屬性還包括賽段的順序號,用於表示賽段的先後順序。
6.根據權利要求5所述的競速類體育項目比賽配置的生成方法,其特徵在幹,按照計時點的操作數據生成計時點配置包括 如果計時點操作類型為増加計時點,則在資料庫的計時點數據表中新生成一條記錄,並將接收到的計時點屬性值填充到這條記錄的對應欄位中; 如果計時點操作類型為在已有計時點中間插入一個計時點,則在資料庫的計時點數據表中新生成一條記錄,並將計時點的屬性值填充到這條記錄的對應欄位中,然後對插入計時點位置之後的所有計時點的順序號都加I ; 如果計時點操作類型為刪除計時點,如果刪除的是順序號在最後的一個計時點,則把資料庫的計時點數據表中對應的記錄刪除;如果刪除的是中間的一個計時點,則把資料庫的計時點數據表中對應的記錄刪除,並且對刪除計時點位置之後的所有計時點的順序號都減I ; 如果計時點操作類型為修改已有的計時點的屬性,則將用戶輸入的計時點屬性值更新到資料庫中對應的記錄。
7.根據權利要求5所述的競速類體育項目比賽配置的生成方法,其特徵在幹,按照賽段的操作數據生成賽段配置包括 如果賽段操作類型為增加賽段,則在資料庫的賽段數據表中新生成一條記錄,並將接收到的賽段屬性值填充到這條記錄的對應欄位中; 如果賽段操作類型為在已有賽段中間插入ー個賽段,則在資料庫的賽段數據表中新生成一條記錄,並將賽段的屬性值填充到這條記錄的對應欄位中,然後對插入賽段位置之後的所有賽段的順序號都加I ; 如果賽段操作類型為刪除賽段,如果刪除的是順序號在最後的ー個賽段,則把資料庫的賽段數據表中對應的記錄刪除;如果刪除的是中間的ー個賽段,則把資料庫的賽段數據表中對應的記錄刪除,並且對刪除賽段位置之後的所有賽段的順序號都減I ; 如果賽段操作類型為修改已有的賽段的屬性,則將用戶輸入的賽段屬性值更新到資料庫中對應的記錄。
8.根據權利要求I所述的競速類體育項目比賽配置的生成方法,其特徵在於,所述接收用戶對計時點的操作數據包括 先從資料庫中取出已經配置好的計時點信息,並放在計時點數據結構中;這些數據結構數據被存放在一條鍊表中;鍊表中數據的放置位置依據計時點順序號從小到大排列,從鍊表頭指向鍊表尾; 根據操作類型,在當前數據基礎上進行計時點的増加、刪除和修改等鍊表操作。
9.根據權利要求8所述的競速類體育項目比賽配置的生成方法,其特徵在於,所述按照計時點的操作數據生成計時點配置包括 遍歷鍊表找到所有存在標識的計時點; 用資料庫中的計時點數據和鍊表中存在標識的計時點數據進行比較; 如果在資料庫中找到了和鍊表中同樣標識的計時點,則將鍊表中的計時點的屬性更新在相應的資料庫中的計時點上;如果資料庫中的計時點沒有在鍊表上找到對應得計時點,刪除資料庫中的該計時點; 遍歷鍊表找到所有沒有標識號的計時點,將這些計時點添加到資料庫中;資料庫在增加這些計時點時,給姆ー個計時點分配ー個全局唯一的標識號。
10.根據權利要求I所述的競速類體育項目比賽配置的生成方法,其特徵在於,在接收用戶對計時點的操作數據後,還包括 依賴計時點的基本數據接收用戶對賽段的操作數據;賽段的操作數據包括賽段操作類型和賽段屬性值 ;所述賽段操作類型包括增加賽段、插入賽段、刪除賽段和修改已有的賽段的屬性;賽段屬性包括用於區分比賽的比賽標識,用於區分賽段的賽段標識,數值來源於計時點標識的賽段開始點,數值來源於計時點標識的賽段結束點; 按照賽段的操作數據生成賽段配置。
11.根據權利要求10所述的競速類體育項目比賽配置的生成方法,其特徵在於,所述接收用戶對計時點或賽段的操作數據包括 先從資料庫中取出已經配置好的計時點或賽段信息,並放在計時點或賽段數據結構中;這些數據結構數據被存放在一條鍊表中;鍊表中數據的放置位置依據計時點或賽段順序號從小到大排列,從鍊表頭指向鍊表尾; 根據操作類型,在當前數據基礎上進行計時點或賽段的増加、刪除和修改等鍊表操作。
12.根據權利要求11所述的競速類體育項目比賽配置的生成方法,其特徵在於,所述按照計時點的操作數據生成計時點配置包括 遍歷鍊表找到所有存在標識的計時點; 用資料庫中的計時點數據和鍊表中存在標識的計時點數據進行比較; 如果在資料庫中找到了和鍊表中同樣標識的計時點,則將鍊表中的計時點的屬性更新在相應的資料庫中的計時點上;如果資料庫中的計時點沒有在鍊表上找到對應得計時點,刪除資料庫中的該計時點; 遍歷鍊表找到所有沒有標識號的計時點,將這些計時點添加到資料庫中;資料庫在增加這些計時點時,給姆ー個計時點分配ー個全局唯一的標識號。
13.根據權利要求11所述的競速類體育項目比賽配置的生成方法,其特徵在於,所述按照賽段的操作數據生成賽段配置包括 遍歷鍊表找到所有存在標識的賽段; 用資料庫中的賽段數據和鍊表中存在標識的賽段數據進行比較; 如果在資料庫中找到了和鍊表中同樣標識的賽段,則將鍊表中的賽段的屬性更新在相應的資料庫中的賽段上;如果資料庫中的賽段沒有在鍊表上找到對應得賽段,刪除資料庫中的該賽段; 遍歷鍊表找到所有沒有標識號的賽段,將這些賽段添加到資料庫中;資料庫在增加這些賽段時,給每一個賽段分配ー個全局唯一的標識號; 更新賽段信息時,將鍊表數據結構中的起、終點順序號進行了轉換,轉換為起終點標識號,然後存儲在資料庫中。轉換方法是資料庫查詢計時點信息中哪ー個計時點的順序號和賽段起點、終點順序號一祥,找到後就將計時點的標識號返回,然後該標識號就被存放在資料庫表的開始點或結束點中。
14.ー種基於比賽配置的成績數據錄入方法,比賽配置包括計時點信息和賽段信息, 所述計時點信息包括比賽標識,用於區分比賽;計時點標識,用於區分計時點;計時點距離出發點的距離,用於計算速度;和計時點精度;所述賽段信息包括比賽標識,用於區分比賽;賽段標識,用於區分賽段;賽段開始點,數值來源於計時點標識;和賽段結束點,數值來源於計時點標識; 其特徵在於,所述成績數據錄入方法包括 獲取該運動員或參賽隊的計時點的成績; 根據配置的計時點信息,查詢收到的成績數據是哪ー個計時點的數據; 根據找到的計時點結合成績信息中包含的運動員或參賽隊的標識,在結果表中找到相應的記錄位置並把成績更新到該記錄; 根據配置的賽段信息,查詢收到的成績數據是否屬於某ー個或多個賽段的邊界點; 如果屬於某個或某些賽段的邊界點,找到賽段所對應的起點計時點和終點計時點,並在結果表中提取運動員或參賽隊該賽段的起點成績和終點成績,兩個成績相減得到賽段成績,然後將賽段成績更新到結果表運動員或參賽隊所對應得賽段成績記錄中。
全文摘要
本發明提供一種競速類體育項目比賽配置的生成方法,其特徵在於,包括接收用戶對計時點的操作數據;計時點的操作數據包括計時點操作類型和計時點屬性值;所述計時點屬性包括用於區分比賽的比賽標識,用於區分計時點的計時點標識,用於計算速度的計時點距離出發點的距離;如果計時點操作類型為增加計時點、插入計時點或修改已有的計時點的屬性,按照計時點的操作數據生成計時點配置。本發明還提供一種基於比賽配置的成績數據錄入方法。通過定義計時點、賽段的配置數據結構,將競速類體育項目共有屬性提取出來,為通用的比賽配置的生成方法提供了基礎。通過上述方法,生成多種競速類體育賽事通用的比賽配置,避免了開發多種比賽軟體。
文檔編號G07C1/24GK102855672SQ20111018362
公開日2013年1月2日 申請日期2011年6月30日 優先權日2011年6月30日
發明者楊佳鵬 申請人:新奧特(北京)視頻技術有限公司