本發(fā)明涉及數(shù)據(jù)管理,具體涉及一種定位改值的屬性及其所屬對(duì)象實(shí)例的方法、設(shè)備和介質(zhì)。
背景技術(shù):
1、在建筑信息化類的軟件當(dāng)中,建筑構(gòu)件會(huì)有屬性,用來表達(dá)和描述構(gòu)件的特征,例如幾何特征、業(yè)務(wù)特征等。屬性是建筑構(gòu)件在軟件建模時(shí)的重要參數(shù)依據(jù),也是建模之后的后續(xù)運(yùn)用--如工程量計(jì)算、施工組織管理模擬等--的基礎(chǔ)數(shù)據(jù)來源。詳細(xì)、豐富、全面、多維度的屬性數(shù)據(jù),可以支持建筑數(shù)字化模型應(yīng)用于盡可能多的業(yè)務(wù)場景中,滿足建筑在全生命周期、全過程、多領(lǐng)域的模擬應(yīng)用。工程量計(jì)算類軟件中,構(gòu)件的屬性一般分為公有屬性和私有屬性。公有屬性是指:實(shí)例的該條屬性的屬性值只能繼承自類;修改后,類及其所有實(shí)例的該條屬性的屬性值全部同步修改;私有屬性是指:實(shí)例的該條屬性的屬性值默認(rèn)繼承自類,但可以自定義改值從而使它的值與類的值不同,即改值只對(duì)當(dāng)前實(shí)例生效,不影響類及類的其他實(shí)例。默認(rèn)狀態(tài)下,建筑構(gòu)件的私有屬性(實(shí)例屬性)值會(huì)繼承公有屬性(類屬性)值。用戶可以自定義設(shè)置私有屬性(實(shí)例屬性)的值,使其與公有屬性(類屬性)的值產(chǎn)生差異。
2、一個(gè)建筑工程當(dāng)中,建筑構(gòu)件種類繁多、每個(gè)構(gòu)件所包含的屬性眾多、每個(gè)構(gòu)件的實(shí)例數(shù)量巨大、不同實(shí)例的同一條屬性的值也變化多樣,因此基于數(shù)據(jù)管理的便利性和可追溯性,需要能夠清楚地知曉:哪些構(gòu)件包含了與公有屬性(類屬性)值不同的實(shí)例屬性、具體是哪些屬性、位于哪些實(shí)例上以及這些實(shí)例上該條屬性的值分別是多少等。
3、現(xiàn)有技術(shù)方案采取以下方式:如有多條屬性,只要有任一條屬性值自定義過(即其值不再是繼承自類屬性的默認(rèn)值),則該實(shí)例的圖形顯示上,會(huì)有變化(配色變化、填充樣式變化等方式)。即可以通過視覺樣式的不同,知道這些實(shí)例“包含了自定義過值的屬性”這一事實(shí),但無法知道:
4、哪些條屬性的值被自定義修改過,改前后沒有明顯的視覺差別做為提示;修改后的值分別是多少,需要人工肉眼去一條條前后比對(duì);每種改后的值,對(duì)應(yīng)哪些實(shí)例,例如有“類1”有10個(gè)實(shí)例,其中3個(gè)將屬性a的值改為a,另個(gè)4個(gè)將屬性a的值改為了a’,剩下三個(gè)與類屬性相同,未自定義過,因此需要知道a的值為a的實(shí)例有哪幾個(gè),a的值為a’的有哪幾個(gè),值未變過的有哪幾個(gè)等。
5、目前行業(yè)內(nèi)的軟件,雖然支持了私有屬性(實(shí)例屬性)、公有屬性(類屬性)的應(yīng)用,但在清楚知曉內(nèi)容的場景上并未深入觸及,使得軟件用戶在面對(duì)一個(gè)項(xiàng)目的天量數(shù)據(jù)時(shí)無所適從,嚴(yán)重影響使用體驗(yàn)和工作效率,無法實(shí)現(xiàn)精細(xì)化管理。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本發(fā)明提供了一種定位改值的屬性及其所屬對(duì)象實(shí)例的方法、設(shè)備和介質(zhì),能夠?qū)瞬町惢瘜?shí)例屬性值的構(gòu)件、構(gòu)件中包含了差異化屬性值的實(shí)例以及構(gòu)件中包含了差異化屬性值的屬性條目標(biāo)識(shí)出來,并且可以直接在模型中快速定位實(shí)例所在的位置,直接反查差異化實(shí)例屬性的詳細(xì)值以及直觀對(duì)比修改前后的值。
2、本發(fā)明提供了一種定位改值的屬性及其所屬對(duì)象實(shí)例的方法,包括如下步驟:
3、步驟1,新建構(gòu)件,設(shè)置構(gòu)件屬性;
4、步驟2,布置構(gòu)件即將構(gòu)件實(shí)例化;
5、步驟3,在數(shù)據(jù)庫層面,利用空間樹型結(jié)構(gòu)進(jìn)行極速索引定位目標(biāo),具體如下:
6、步驟31,把業(yè)務(wù)概念抽象到線性空間:對(duì)查詢時(shí)用到的每一個(gè)維度進(jìn)行編碼;
7、步驟32,將步驟31中是維度及其編碼整合到數(shù)據(jù)結(jié)構(gòu)中,形成一個(gè)多維度的空間樹型數(shù)據(jù)結(jié)構(gòu);
8、步驟33,查詢具體對(duì)象時(shí),將各維度的編碼進(jìn)行整合,得到一條整型索引碼;步驟34,利用得到的索引碼快速定位到私有屬性索引總表中的目標(biāo)私有屬性;
9、步驟35,在私有屬性索引總表中索引到目標(biāo)后,在數(shù)據(jù)庫里找到目標(biāo)對(duì)象;
10、步驟4,在交互層增加標(biāo)識(shí)。
11、其中,所述步驟4中,在交互層增加標(biāo)識(shí)的具體方式為:對(duì)于進(jìn)行過修改屬性值修改的屬性,增加標(biāo)識(shí)按鈕;點(diǎn)擊標(biāo)識(shí)增加索引目標(biāo)對(duì)象列表;對(duì)于經(jīng)過步驟35在數(shù)據(jù)庫里查詢到的目標(biāo)對(duì)象,展示在索引目標(biāo)對(duì)象列表中;雙擊列表中的某一條數(shù)據(jù),在繪圖區(qū)快速定位到目標(biāo)對(duì)象的圖元,其中定位是指將對(duì)象圖元放大居中顯示到繪圖區(qū)正中。
12、其中,所述步驟1中,將構(gòu)件屬性信息記錄到數(shù)據(jù)庫的數(shù)據(jù)表1中;其中,數(shù)據(jù)表1用于記錄構(gòu)件及其屬性;新建構(gòu)件屬性默認(rèn)繼承自工程級(jí)相關(guān)設(shè)置。
13、其中,所述步驟2中,布置構(gòu)件即將構(gòu)件實(shí)例化,然后將實(shí)例屬性記錄到數(shù)據(jù)庫的數(shù)據(jù)表2中;其中,數(shù)據(jù)表2用于記錄構(gòu)件實(shí)例、在繪圖空間的位置坐標(biāo)等屬性;實(shí)例的屬性默認(rèn)繼承自構(gòu)件的屬性。
14、其中,所述步驟31中維度包括樓層、構(gòu)件類型、構(gòu)件id、構(gòu)件實(shí)例id和實(shí)例屬性的id。
15、其中,所述步驟33中,所述具體對(duì)象包括哪一樓層、哪個(gè)構(gòu)件類型、哪個(gè)構(gòu)件id、哪個(gè)實(shí)例id以及哪條屬性被自定義修改而解除了自父級(jí)繼承的關(guān)系;其中,修改屬性值即解除繼承關(guān)系,該值為當(dāng)前實(shí)例所獨(dú)有,只對(duì)當(dāng)前實(shí)例生效。
16、本發(fā)明提供了一種電子設(shè)備,所述電子設(shè)備包括處理器、用于存儲(chǔ)所述處理器可執(zhí)行指令的存儲(chǔ)器;所述處理器,用于從所述存儲(chǔ)器中讀取所述可執(zhí)行指令,并執(zhí)行所述指令以實(shí)現(xiàn)本發(fā)明所述的定位改值的屬性及其所屬對(duì)象實(shí)例的方法。
17、本發(fā)明提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序用于執(zhí)行本發(fā)明所述的定位改值的屬性及其所屬對(duì)象實(shí)例的方法。
18、有益效果:
19、1.本發(fā)明方法通過新建構(gòu)件到數(shù)據(jù)庫的數(shù)據(jù)表中,在數(shù)據(jù)庫層面利用空間樹型結(jié)構(gòu)進(jìn)行極速索引定位目標(biāo);在交互層增加標(biāo)識(shí),對(duì)于進(jìn)行過修改屬性值的修改的屬性,增加標(biāo)識(shí)按鈕,通過點(diǎn)擊標(biāo)識(shí)增加索引目標(biāo)對(duì)象列表,實(shí)現(xiàn)定位改值的屬性及其所屬對(duì)象實(shí)例。
20、2.本發(fā)明方法將包含了差異化實(shí)例屬性值的構(gòu)件、構(gòu)件中包含了差異化屬性值的實(shí)例以及構(gòu)件中包含了差異化屬性值的屬性條目標(biāo)識(shí)出來,并且可以直接在模型中快速定位實(shí)例所在的位置,直接反查差異化實(shí)例屬性的詳細(xì)值以及直觀對(duì)比修改前后的值。
21、3.本發(fā)明設(shè)備用于實(shí)現(xiàn)本發(fā)明方法,通過新建構(gòu)件到數(shù)據(jù)庫的數(shù)據(jù)表中,在數(shù)據(jù)庫層面利用空間樹型結(jié)構(gòu)進(jìn)行極速索引定位目標(biāo);在交互層增加標(biāo)識(shí),對(duì)于進(jìn)行過修改屬性值的修改的屬性,增加標(biāo)識(shí)按鈕,通過點(diǎn)擊標(biāo)識(shí)增加索引目標(biāo)對(duì)象列表,實(shí)現(xiàn)定位改值的屬性及其所屬對(duì)象實(shí)例。
22、4.本發(fā)明設(shè)備中,將包含了差異化實(shí)例屬性值的構(gòu)件、構(gòu)件中包含了差異化屬性值的實(shí)例以及構(gòu)件中包含了差異化屬性值的屬性條目標(biāo)識(shí)出來,并且可以直接在模型中快速定位實(shí)例所在的位置,直接反查差異化實(shí)例屬性的詳細(xì)值以及直觀對(duì)比修改前后的值。
23、5.本發(fā)明介質(zhì)用于實(shí)現(xiàn)本發(fā)明方法,通過新建構(gòu)件到數(shù)據(jù)庫的數(shù)據(jù)表中,在數(shù)據(jù)庫層面利用空間樹型結(jié)構(gòu)進(jìn)行極速索引定位目標(biāo);在交互層增加標(biāo)識(shí),對(duì)于進(jìn)行過修改屬性值的修改的屬性,增加標(biāo)識(shí)按鈕,通過點(diǎn)擊標(biāo)識(shí)增加索引目標(biāo)對(duì)象列表,實(shí)現(xiàn)定位改值的屬性及其所屬對(duì)象實(shí)例。
24、6.本發(fā)明介質(zhì)中,將包含了差異化實(shí)例屬性值的構(gòu)件、構(gòu)件中包含了差異化屬性值的實(shí)例以及構(gòu)件中包含了差異化屬性值的屬性條目標(biāo)識(shí)出來,并且可以直接在模型中快速定位實(shí)例所在的位置,直接反查差異化實(shí)例屬性的詳細(xì)值以及直觀對(duì)比修改前后的值。