1
0

fanLocal.data.ts 121 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325
  1. import { BasicColumn } from '/@/components/Table';
  2. import { FormSchema } from '/@/components/Table';
  3. import { rules } from '/@/utils/helper/validator';
  4. import { ref, reactive, defineAsyncComponent } from 'vue';
  5. import { cloneDeep } from 'lodash-es';
  6. import EntryThree from './components/entryThree.vue';
  7. export const columns: BasicColumn[] = [
  8. {
  9. title: '名称',
  10. dataIndex: 'strname',
  11. width: 120,
  12. },
  13. {
  14. title: '安装位置',
  15. dataIndex: 'strinstallpos',
  16. width: 100,
  17. },
  18. {
  19. title: '是否为常闭型',
  20. dataIndex: 'bnormalclose',
  21. width: 100,
  22. // customRender: render.renderAvatar,
  23. },
  24. {
  25. title: '净宽',
  26. dataIndex: 'fclearwidth',
  27. width: 80,
  28. },
  29. {
  30. title: '净高',
  31. dataIndex: 'fclearheight',
  32. width: 100,
  33. },
  34. {
  35. title: '风门道数',
  36. dataIndex: 'ndoorcount',
  37. width: 100,
  38. },
  39. {
  40. title: '所属分站',
  41. width: 150,
  42. dataIndex: 'stationname',
  43. },
  44. {
  45. title: '点表',
  46. width: 100,
  47. dataIndex: 'strtype',
  48. },
  49. {
  50. title: '监测类型',
  51. dataIndex: 'monitorflag',
  52. width: 100,
  53. },
  54. {
  55. title: '是否模拟数据',
  56. dataIndex: 'testflag',
  57. width: 100,
  58. },
  59. ];
  60. export const recycleColumns: BasicColumn[] = [
  61. {
  62. title: '名称',
  63. dataIndex: 'strname',
  64. width: 100,
  65. },
  66. {
  67. title: '是否为常闭型',
  68. dataIndex: 'bnormalclose',
  69. width: 100,
  70. },
  71. ];
  72. export const searchFormSchema: FormSchema[] = [
  73. {
  74. label: '名称',
  75. field: 'strname',
  76. component: 'Input',
  77. colProps: { span: 6 },
  78. },
  79. {
  80. label: '安装位置',
  81. field: 'strinstallpos',
  82. component: 'Input',
  83. colProps: { span: 6 },
  84. },
  85. {
  86. label: '是否为常闭型',
  87. field: 'bnormalclose',
  88. component: 'JDictSelectTag',
  89. componentProps: {
  90. dictCode: 'user_status',
  91. placeholder: '请选择读写类型',
  92. stringToNumber: true,
  93. },
  94. colProps: { span: 6 },
  95. },
  96. ];
  97. export const formSchema: FormSchema[] = [
  98. {
  99. label: '',
  100. field: 'id',
  101. component: 'Input',
  102. show: false,
  103. },
  104. {
  105. label: '名称',
  106. field: 'strname',
  107. component: 'Input',
  108. },
  109. {
  110. label: '安装位置',
  111. field: 'strinstallpos',
  112. component: 'Input',
  113. },
  114. {
  115. label: '是否为常闭型',
  116. field: 'bnormalclose',
  117. component: 'RadioGroup',
  118. defaultValue: 1,
  119. componentProps: () => {
  120. return {
  121. options: [
  122. { label: '是', value: 1, key: '1' },
  123. { label: '否', value: 0, key: '2' },
  124. ],
  125. };
  126. },
  127. },
  128. {
  129. label: '净宽',
  130. field: 'fclearwidth',
  131. component: 'Input',
  132. },
  133. {
  134. label: '净高',
  135. field: 'fclearheight',
  136. component: 'Input',
  137. },
  138. {
  139. label: '风门道数',
  140. field: 'ndoorcount',
  141. component: 'Input',
  142. },
  143. {
  144. label: '所属分站',
  145. field: 'stationname',
  146. component: 'JDictSelectTag',
  147. componentProps: {
  148. dictCode: 'user_status',
  149. placeholder: '请选择状态',
  150. stringToNumber: true,
  151. },
  152. },
  153. {
  154. label: '点表',
  155. field: 'strtype',
  156. component: 'JDictSelectTag',
  157. componentProps: {
  158. dictCode: 'user_status',
  159. placeholder: '请选择状态',
  160. stringToNumber: true,
  161. },
  162. },
  163. {
  164. label: '监测类型',
  165. field: 'monitorflag',
  166. component: 'JDictSelectTag',
  167. componentProps: {
  168. dictCode: 'user_status',
  169. placeholder: '请选择状态',
  170. stringToNumber: true,
  171. },
  172. },
  173. {
  174. label: '是否模拟数据',
  175. field: 'testflag',
  176. component: 'RadioGroup',
  177. defaultValue: 1,
  178. componentProps: () => {
  179. return {
  180. options: [
  181. { label: '是', value: 1, key: '1' },
  182. { label: '否', value: 0, key: '2' },
  183. ],
  184. };
  185. },
  186. },
  187. ];
  188. export const formPasswordSchema: FormSchema[] = [
  189. {
  190. label: '用户账号',
  191. field: 'username',
  192. component: 'Input',
  193. componentProps: { readOnly: true },
  194. },
  195. {
  196. label: '登录密码',
  197. field: 'password',
  198. component: 'StrengthMeter',
  199. componentProps: {
  200. placeholder: '请输入登录密码',
  201. },
  202. rules: [
  203. {
  204. required: true,
  205. message: '请输入登录密码',
  206. },
  207. ],
  208. },
  209. {
  210. label: '确认密码',
  211. field: 'confirmPassword',
  212. component: 'InputPassword',
  213. dynamicRules: ({ values }) => rules.confirmPassword(values, true),
  214. },
  215. ];
  216. export const formAgentSchema: FormSchema[] = [
  217. {
  218. label: '',
  219. field: 'id',
  220. component: 'Input',
  221. show: false,
  222. },
  223. {
  224. field: 'userName',
  225. label: '用户名',
  226. component: 'Input',
  227. componentProps: {
  228. readOnly: true,
  229. allowClear: false,
  230. },
  231. },
  232. {
  233. field: 'agentUserName',
  234. label: '代理人用户名',
  235. required: true,
  236. component: 'JSelectUser',
  237. componentProps: {
  238. rowKey: 'username',
  239. labelKey: 'realname',
  240. maxSelectCount: 10,
  241. },
  242. },
  243. {
  244. field: 'startTime',
  245. label: '代理开始时间',
  246. component: 'DatePicker',
  247. required: true,
  248. componentProps: {
  249. showTime: true,
  250. valueFormat: 'YYYY-MM-DD HH:mm:ss',
  251. placeholder: '请选择代理开始时间',
  252. },
  253. },
  254. {
  255. field: 'endTime',
  256. label: '代理结束时间',
  257. component: 'DatePicker',
  258. required: true,
  259. componentProps: {
  260. showTime: true,
  261. valueFormat: 'YYYY-MM-DD HH:mm:ss',
  262. placeholder: '请选择代理结束时间',
  263. },
  264. },
  265. {
  266. field: 'status',
  267. label: '状态',
  268. component: 'JDictSelectTag',
  269. defaultValue: '1',
  270. componentProps: {
  271. dictCode: 'valid_status',
  272. type: 'radioButton',
  273. },
  274. },
  275. ];
  276. export const chartsColumnsZDKZ = [
  277. {
  278. legend: '供风量',
  279. seriesName: '供风量(m³/min)',
  280. ymax: 1000,
  281. yname: 'm³/min',
  282. linetype: 'line',
  283. yaxispos: 'left',
  284. color: '#FCB146',
  285. sort: 1,
  286. dataIndex: 'windQuantity2',
  287. xRotate: 0,
  288. },
  289. {
  290. legend: '迎头瓦斯',
  291. seriesName: '迎头瓦斯(%)',
  292. ymax: 0.8,
  293. yname: '%',
  294. linetype: 'line',
  295. yaxispos: 'right',
  296. color: '#02FBA7',
  297. sort: 2,
  298. dataIndex: 'gas1',
  299. xRotate: 0,
  300. },
  301. {
  302. legend: '风机频率',
  303. seriesName: '风机频率(Hz)',
  304. ymax: 50,
  305. yname: 'Hz',
  306. linetype: 'line',
  307. yaxispos: 'right',
  308. color: '#AD19FE',
  309. sort: 3,
  310. dataIndex: 'FanfHz',
  311. xRotate: 0,
  312. },
  313. ];
  314. export const chartsColumns1 = [
  315. {
  316. legend: '风量',
  317. seriesName: 'm³/min',
  318. ymax: 1000,
  319. yname: '',
  320. linetype: 'bar',
  321. yaxispos: 'left',
  322. color: '#755cf8',
  323. sort: 1,
  324. dataIndex: '',
  325. xRotate: 0,
  326. },
  327. ];
  328. export const transformMobileH = [
  329. {
  330. title: 'A相电流(A)',
  331. code: '',
  332. },
  333. {
  334. title: 'B相电流(A)',
  335. code: '',
  336. },
  337. {
  338. title: 'C相电流(A)',
  339. code: '',
  340. },
  341. {
  342. title: '电压(V)',
  343. code: '',
  344. },
  345. {
  346. title: '温度(℃)',
  347. code: '',
  348. },
  349. {
  350. title: '额定电流(A)',
  351. code: '',
  352. },
  353. {
  354. title: '短路电流(A)',
  355. code: '',
  356. },
  357. ];
  358. export const transformMobileL = [
  359. {
  360. title: 'A相电流(A)',
  361. code: '',
  362. },
  363. {
  364. title: 'B相电流(A)',
  365. code: '',
  366. },
  367. {
  368. title: 'C相电流(A)',
  369. code: '',
  370. },
  371. {
  372. title: '电压(V)',
  373. code: '',
  374. },
  375. {
  376. title: '功率(KW)',
  377. code: '',
  378. },
  379. {
  380. title: '额定电流(A)',
  381. code: '',
  382. },
  383. {
  384. title: '短路电流(A)',
  385. code: '',
  386. },
  387. ];
  388. export const protectionEnableH = [
  389. {
  390. title: '短路',
  391. code: '',
  392. value: '使能',
  393. },
  394. {
  395. title: '不平衡',
  396. code: '',
  397. value: '未使能',
  398. },
  399. {
  400. title: '过载',
  401. code: '',
  402. value: '使能',
  403. },
  404. {
  405. title: '过压',
  406. code: '',
  407. value: '使能',
  408. },
  409. {
  410. title: '欠压',
  411. code: '',
  412. value: '使能',
  413. },
  414. {
  415. title: '短路延时(ms)',
  416. code: '',
  417. value: 0,
  418. },
  419. {
  420. title: '过压延时(s)',
  421. code: '',
  422. value: 10,
  423. },
  424. {
  425. title: '欠压延时(s)',
  426. code: '',
  427. value: 10,
  428. },
  429. ];
  430. export const protectionEnableL = [
  431. {
  432. title: '短路',
  433. code: '',
  434. value: '使能',
  435. },
  436. {
  437. title: '不平衡',
  438. code: '',
  439. value: '未使能',
  440. },
  441. {
  442. title: '过载',
  443. code: '',
  444. value: '使能',
  445. },
  446. {
  447. title: '过压',
  448. code: '',
  449. value: '使能',
  450. },
  451. {
  452. title: '欠压',
  453. code: '',
  454. value: '使能',
  455. },
  456. {
  457. title: '漏电',
  458. code: '',
  459. value: '使能',
  460. },
  461. {
  462. title: '漏电闭锁',
  463. code: '',
  464. value: '使能',
  465. },
  466. {
  467. title: '漏电延时(ms)',
  468. code: '',
  469. value: 10,
  470. },
  471. {
  472. title: '短路延时(ms)',
  473. code: '',
  474. value: 1,
  475. },
  476. {
  477. title: '过压延时(s)',
  478. code: '',
  479. value: 10,
  480. },
  481. {
  482. title: '欠压延时(s)',
  483. code: '',
  484. value: 10,
  485. },
  486. ];
  487. export const electricMonitor = {
  488. 电流: [
  489. {
  490. title: 'A相电流 (A)',
  491. code: '',
  492. },
  493. {
  494. title: 'B相电流 (A)',
  495. code: '',
  496. },
  497. {
  498. title: 'C相电流 (A)',
  499. code: '',
  500. },
  501. {
  502. title: '额定电流 (A)',
  503. code: '',
  504. },
  505. ],
  506. 电压: [
  507. {
  508. title: 'Uac (V)',
  509. code: '',
  510. },
  511. {
  512. title: '功率 (KW)',
  513. code: '',
  514. },
  515. ],
  516. 保护状态: [
  517. {
  518. title: '短路',
  519. code: '',
  520. value: 1,
  521. },
  522. {
  523. title: '失压',
  524. code: '',
  525. value: 1,
  526. },
  527. {
  528. title: '过载',
  529. code: '',
  530. value: 1,
  531. },
  532. {
  533. title: '过压',
  534. code: '',
  535. value: 1,
  536. },
  537. {
  538. title: '缺相',
  539. code: '',
  540. value: 1,
  541. },
  542. {
  543. title: '漏电保护',
  544. code: '',
  545. value: 1,
  546. },
  547. {
  548. title: '相不平衡',
  549. code: '',
  550. value: 1,
  551. },
  552. {
  553. title: '漏电闭锁',
  554. code: '',
  555. value: 1,
  556. },
  557. {
  558. title: '瓦斯闭锁',
  559. code: '',
  560. value: 1,
  561. },
  562. {
  563. title: '选择性漏电保护',
  564. code: '',
  565. value: 1,
  566. },
  567. ],
  568. };
  569. export const electricState = [
  570. {
  571. title: '额定电流(A)',
  572. code: '',
  573. value: 100.0,
  574. },
  575. {
  576. title: '额定电压(V)',
  577. code: '',
  578. value: 660,
  579. },
  580. {
  581. title: '短路倍数',
  582. code: '',
  583. value: 8,
  584. },
  585. {
  586. title: '欠压倍数',
  587. code: '',
  588. value: 0.85,
  589. },
  590. {
  591. title: '漏电延时(s)',
  592. code: '',
  593. value: 5.0,
  594. },
  595. {
  596. title: '不平衡倍数',
  597. code: '',
  598. value: 0.0,
  599. },
  600. {
  601. title: '漏电闭锁(KΩ)',
  602. code: '',
  603. value: 11,
  604. },
  605. {
  606. title: '末端短路倍数',
  607. code: '',
  608. value: 1.0,
  609. },
  610. {
  611. title: '相敏倍数',
  612. code: '',
  613. value: 41.0,
  614. },
  615. {
  616. title: '过压延时(s)',
  617. code: '',
  618. value: 1.2,
  619. },
  620. {
  621. title: '过压定值',
  622. code: '',
  623. value: 1.2,
  624. },
  625. ];
  626. export const fanControlState1 = {
  627. 电流电压: {
  628. 'la1(A)': [
  629. {
  630. code: '',
  631. value: 0.0,
  632. },
  633. {
  634. code: '',
  635. value: 0.0,
  636. },
  637. ],
  638. 'lb1(A)': [
  639. {
  640. code: '',
  641. value: 0.0,
  642. },
  643. {
  644. code: '',
  645. value: 0.0,
  646. },
  647. ],
  648. 'lc1(A)': [
  649. {
  650. code: '',
  651. value: 0.0,
  652. },
  653. {
  654. code: '',
  655. value: 0.0,
  656. },
  657. ],
  658. '额定电流(A)': [
  659. {
  660. code: '',
  661. value: 55.0,
  662. },
  663. {
  664. code: '',
  665. value: 55.0,
  666. },
  667. ],
  668. 'Uac(V)': [
  669. {
  670. code: '',
  671. value: 658,
  672. },
  673. ],
  674. },
  675. 功率: {
  676. '功率(KW)': [
  677. {
  678. code: '',
  679. value: 0.0,
  680. },
  681. {
  682. code: '',
  683. value: 0.0,
  684. },
  685. ],
  686. },
  687. 运行状态: {
  688. 开合闸状态: [
  689. {
  690. code: '',
  691. value: 0,
  692. },
  693. {
  694. code: '',
  695. value: 0,
  696. },
  697. ],
  698. },
  699. };
  700. export const fanControlState2 = {
  701. 电流电压: {
  702. 'la1(A)': [
  703. {
  704. code: '',
  705. value: 35.0,
  706. },
  707. {
  708. code: '',
  709. value: 28.0,
  710. },
  711. ],
  712. 'lb1(A)': [
  713. {
  714. code: '',
  715. value: 34.0,
  716. },
  717. {
  718. code: '',
  719. value: 28.0,
  720. },
  721. ],
  722. 'lc1(A)': [
  723. {
  724. code: '',
  725. value: 34.0,
  726. },
  727. {
  728. code: '',
  729. value: 29.0,
  730. },
  731. ],
  732. '额定电流(A)': [
  733. {
  734. code: '',
  735. value: 75.0,
  736. },
  737. {
  738. code: '',
  739. value: 75.0,
  740. },
  741. ],
  742. 'Uac(V)': [
  743. {
  744. code: '',
  745. value: 697,
  746. },
  747. ],
  748. },
  749. 功率: {
  750. '功率(KW)': [
  751. {
  752. code: '',
  753. value: 42,
  754. },
  755. {
  756. code: '',
  757. value: 34,
  758. },
  759. ],
  760. },
  761. 运行状态: {
  762. 开合闸状态: [
  763. {
  764. code: '',
  765. value: 1,
  766. },
  767. {
  768. code: '',
  769. value: 1,
  770. },
  771. ],
  772. },
  773. };
  774. export const fanSetting1 = [
  775. {
  776. title: 'I额定电流(A)',
  777. code: '',
  778. value: '55',
  779. },
  780. {
  781. title: 'II额定电流(A)',
  782. code: '',
  783. value: '55',
  784. },
  785. {
  786. title: '电压等级(V)',
  787. code: '',
  788. value: '660',
  789. },
  790. {
  791. title: 'I速断定值',
  792. code: '',
  793. value: '8',
  794. },
  795. {
  796. title: 'II速断定值',
  797. code: '',
  798. value: '8',
  799. },
  800. {
  801. title: '欠压定值',
  802. code: '',
  803. value: '1',
  804. },
  805. {
  806. title: '欠压延时',
  807. code: '',
  808. value: '6',
  809. },
  810. {
  811. title: '过压定值',
  812. code: '',
  813. value: '1',
  814. },
  815. {
  816. title: '过压延时',
  817. code: '',
  818. value: '6',
  819. },
  820. {
  821. title: 'I启动II延时(s)',
  822. code: '',
  823. value: '5',
  824. },
  825. {
  826. title: '启动对侧延时(s)',
  827. code: '',
  828. value: '5',
  829. },
  830. {
  831. title: '风电瓦斯延时(s)',
  832. code: '',
  833. value: '0',
  834. },
  835. ];
  836. export const fanSetting2 = [
  837. {
  838. title: 'I额定电流(A)',
  839. code: '',
  840. value: '75',
  841. },
  842. {
  843. title: 'II额定电流(A)',
  844. code: '',
  845. value: '75',
  846. },
  847. {
  848. title: '电压等级(V)',
  849. code: '',
  850. value: '660',
  851. },
  852. {
  853. title: 'I速断定值',
  854. code: '',
  855. value: '8',
  856. },
  857. {
  858. title: 'II速断定值',
  859. code: '',
  860. value: '9',
  861. },
  862. {
  863. title: '欠压定值',
  864. code: '',
  865. value: '0',
  866. },
  867. {
  868. title: '欠压延时',
  869. code: '',
  870. value: '6',
  871. },
  872. {
  873. title: '过压定值',
  874. code: '',
  875. value: '1',
  876. },
  877. {
  878. title: '过压延时',
  879. code: '',
  880. value: '6',
  881. },
  882. {
  883. title: 'I启动II延时(s)',
  884. code: '',
  885. value: '5',
  886. },
  887. {
  888. title: '启动对侧延时(s)',
  889. code: '',
  890. value: '5',
  891. },
  892. {
  893. title: '风电瓦斯延时(s)',
  894. code: '',
  895. value: '0',
  896. },
  897. ];
  898. export const data_model = ref<any>({
  899. layout_center: { x: 727, y: 226 },
  900. config: {
  901. background_color: '#00000000',
  902. scale: 0.9,
  903. position_center: { x: 0, y: 0 },
  904. svg_position_center: { x: 50, y: 50 },
  905. grid: true,
  906. ruler: false,
  907. },
  908. done_json: [
  909. {
  910. id: 'connection_lineSAVIxZbu1U',
  911. x: -322,
  912. y: 297,
  913. client: { x: -345, y: 316 },
  914. scale_x: 1,
  915. scale_y: 1,
  916. rotate: 0,
  917. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  918. point_coordinate: {
  919. tl: { x: -345.5, y: 292 },
  920. tc: { x: -345, y: 292 },
  921. tr: { x: -344.5, y: 292 },
  922. l: { x: -345.5, y: 316 },
  923. r: { x: -344.5, y: 316 },
  924. bl: { x: -345.5, y: 340 },
  925. bc: { x: -345, y: 340 },
  926. br: { x: -344.5, y: 340 },
  927. },
  928. name: 'connection_line',
  929. title: 'changeLine',
  930. type: 'ConnectionLine',
  931. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  932. display: true,
  933. props: {
  934. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  935. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  936. point_position: {
  937. title: '点坐标',
  938. type: 'JsonEdit',
  939. val: [
  940. { x: 50, y: 47 },
  941. { x: 50, y: 20 },
  942. ],
  943. },
  944. },
  945. animations: {
  946. type: {
  947. title: '动画类型',
  948. type: 'Select',
  949. val: 'None',
  950. options: [
  951. { label: '无', value: 'None' },
  952. { label: '电流', value: 'Electricity' },
  953. { label: '轨迹', value: 'Track' },
  954. { label: '水珠', value: 'WaterDrop' },
  955. ],
  956. },
  957. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  958. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  959. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  960. reverse: { title: '反转动画', type: 'Switch', val: false },
  961. },
  962. bind_anchors: { start: { type: 'TopCenter', target_id: 'custom-svg-text662jqUKDwd' }, end: null },
  963. },
  964. {
  965. id: 'connection_lineYOym7m1COw',
  966. x: -499,
  967. y: 293,
  968. client: { x: -499, y: 313 },
  969. scale_x: 1,
  970. scale_y: 1,
  971. rotate: 0,
  972. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  973. point_coordinate: {
  974. tl: { x: -499.5, y: 289 },
  975. tc: { x: -499, y: 289 },
  976. tr: { x: -498.5, y: 289 },
  977. l: { x: -499.5, y: 313 },
  978. r: { x: -498.5, y: 313 },
  979. bl: { x: -499.5, y: 337 },
  980. bc: { x: -499, y: 337 },
  981. br: { x: -498.5, y: 337 },
  982. },
  983. name: 'connection_line',
  984. title: 'changeLine',
  985. type: 'ConnectionLine',
  986. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  987. display: true,
  988. props: {
  989. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  990. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  991. point_position: {
  992. title: '点坐标',
  993. type: 'JsonEdit',
  994. val: [
  995. { x: 51, y: 53 },
  996. { x: 51, y: 21 },
  997. ],
  998. },
  999. },
  1000. animations: {
  1001. type: {
  1002. title: '动画类型',
  1003. type: 'Select',
  1004. val: 'None',
  1005. options: [
  1006. { label: '无', value: 'None' },
  1007. { label: '电流', value: 'Electricity' },
  1008. { label: '轨迹', value: 'Track' },
  1009. { label: '水珠', value: 'WaterDrop' },
  1010. ],
  1011. },
  1012. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  1013. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  1014. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  1015. reverse: { title: '反转动画', type: 'Switch', val: false },
  1016. },
  1017. bind_anchors: { start: { type: 'TopCenter', target_id: 'custom-svg-text662jqUKDwd' }, end: null },
  1018. },
  1019. {
  1020. id: 'arrowWVIq74qgBO',
  1021. x: -520.5,
  1022. y: -143,
  1023. client: { x: -520.5, y: -143 },
  1024. scale_x: 0.45,
  1025. scale_y: 0.44799998632812543,
  1026. rotate: 179.9812559818536,
  1027. actual_bound: { x: 0.0000014901161193847656, y: 14.285714149475098, width: 100, height: 71.42857360839844 },
  1028. point_coordinate: {
  1029. tl: { x: -497.9947668868031, y: -127.00736161477208 },
  1030. tc: { x: -520.494765682786, y: -127.00000085618991 },
  1031. tr: { x: -542.994764478769, y: -126.99264009760776 },
  1032. l: { x: -498.00000120401705, y: -143.00736075858217 },
  1033. r: { x: -542.999998795983, y: -142.99263924141783 },
  1034. bl: { x: -498.00523552123104, y: -159.00735990239224 },
  1035. bc: { x: -520.505234317214, y: -158.99999914381007 },
  1036. br: { x: -543.0052331131969, y: -158.99263838522793 },
  1037. },
  1038. name: 'arrow',
  1039. title: '箭头',
  1040. type: 'File',
  1041. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1042. display: true,
  1043. props: { fill: { title: '填充色', type: 'Color', val: '#ff0000' } },
  1044. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1045. },
  1046. {
  1047. id: 'arrowUFvMb6HR6G',
  1048. x: -298.5,
  1049. y: -142,
  1050. client: { x: -302.5, y: -142 },
  1051. scale_x: 0.45,
  1052. scale_y: 0.44799998632812543,
  1053. rotate: 0,
  1054. actual_bound: { x: 0.0000014901161193847656, y: 14.285714149475098, width: 100, height: 71.42857360839844 },
  1055. point_coordinate: {
  1056. tl: { x: -325, y: -158 },
  1057. tc: { x: -302.5, y: -158 },
  1058. tr: { x: -280, y: -158 },
  1059. l: { x: -325, y: -142 },
  1060. r: { x: -280, y: -142 },
  1061. bl: { x: -325, y: -126 },
  1062. bc: { x: -302.5, y: -126 },
  1063. br: { x: -280, y: -126 },
  1064. },
  1065. name: 'arrow',
  1066. title: '箭头-copy',
  1067. type: 'File',
  1068. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1069. display: true,
  1070. props: { fill: { title: '填充色', type: 'Color', val: '#ff0000' } },
  1071. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1072. },
  1073. {
  1074. id: 'straight-lineTy3uyr5DOv',
  1075. x: 508,
  1076. y: 177,
  1077. client: { x: 508, y: 177 },
  1078. scale_x: 1,
  1079. scale_y: 1,
  1080. rotate: 0,
  1081. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  1082. point_coordinate: {
  1083. tl: { x: -551.999998795983, y: -137.99263924141783 },
  1084. tc: { x: -551.999998795983, y: -137.99263924141783 },
  1085. tr: { x: -551.999998795983, y: -137.99263924141783 },
  1086. l: { x: -551.999998795983, y: -137.99263924141783 },
  1087. r: { x: -551.999998795983, y: -137.99263924141783 },
  1088. bl: { x: -551.999998795983, y: -137.99263924141783 },
  1089. bc: { x: -551.999998795983, y: -137.99263924141783 },
  1090. br: { x: -551.999998795983, y: -137.99263924141783 },
  1091. },
  1092. name: 'connection_line',
  1093. title: '连接线',
  1094. type: 'ConnectionLine',
  1095. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  1096. display: true,
  1097. props: {
  1098. stroke: { title: '线条颜色', type: 'Color', val: '#ff0000' },
  1099. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  1100. point_position: { title: '点坐标', type: 'JsonEdit', val: [{ x: 50, y: 50 }] },
  1101. },
  1102. animations: {
  1103. type: {
  1104. title: '动画类型',
  1105. type: 'Select',
  1106. val: 'None',
  1107. options: [
  1108. { label: '无', value: 'None' },
  1109. { label: '电流', value: 'Electricity' },
  1110. { label: '轨迹', value: 'Track' },
  1111. { label: '水珠', value: 'WaterDrop' },
  1112. ],
  1113. },
  1114. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  1115. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  1116. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  1117. reverse: { title: '反转动画', type: 'Switch', val: false },
  1118. },
  1119. bind_anchors: { start: { type: 'Right', target_id: 'arrowWVIq74qgBO' }, end: null },
  1120. },
  1121. {
  1122. id: 'rect3OD1llFsFbQ',
  1123. x: -688,
  1124. y: -224.5,
  1125. client: { x: -688, y: -224.5 },
  1126. scale_x: 1.9694118000598109,
  1127. scale_y: 0.3599999890136722,
  1128. rotate: 0,
  1129. actual_bound: { x: 2.777777671813965, y: 41.66666793823242, width: 94.44444274902344, height: 13.88888931274414 },
  1130. point_coordinate: {
  1131. tl: { x: -781, y: -227 },
  1132. tc: { x: -688, y: -227 },
  1133. tr: { x: -595, y: -227 },
  1134. l: { x: -781, y: -224.5 },
  1135. r: { x: -595, y: -224.5 },
  1136. bl: { x: -781, y: -222 },
  1137. bc: { x: -688, y: -222 },
  1138. br: { x: -595, y: -222 },
  1139. },
  1140. name: 'rect3',
  1141. title: '矩形',
  1142. type: 'File',
  1143. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1144. display: true,
  1145. props: { fill: { title: '填充色', type: 'Color', val: '#ff0000' } },
  1146. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1147. },
  1148. {
  1149. id: 'rect3z6ep3DMpbX',
  1150. x: -138,
  1151. y: -226.5,
  1152. client: { x: -138, y: -226.5 },
  1153. scale_x: 1.9694118000598109,
  1154. scale_y: 0.3599999890136722,
  1155. rotate: 0,
  1156. actual_bound: { x: 2.777777671813965, y: 41.66666793823242, width: 94.44444274902344, height: 13.88888931274414 },
  1157. point_coordinate: {
  1158. tl: { x: -231, y: -229 },
  1159. tc: { x: -138, y: -229 },
  1160. tr: { x: -45, y: -229 },
  1161. l: { x: -231, y: -226.5 },
  1162. r: { x: -45, y: -226.5 },
  1163. bl: { x: -231, y: -224 },
  1164. bc: { x: -138, y: -224 },
  1165. br: { x: -45, y: -224 },
  1166. },
  1167. name: 'rect3',
  1168. title: '矩形-copy',
  1169. type: 'File',
  1170. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1171. display: true,
  1172. props: { fill: { title: '填充色', type: 'Color', val: '#ff0000' } },
  1173. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1174. },
  1175. {
  1176. id: 'straight-lineYTEQVhroc2',
  1177. x: -542.999998795983,
  1178. y: -142.99263924141783,
  1179. client: { x: 588, y: 224 },
  1180. scale_x: 1,
  1181. scale_y: 1,
  1182. rotate: 0,
  1183. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  1184. point_coordinate: {
  1185. tl: { x: -585.999998795983, y: -185.99263924141783 },
  1186. tc: { x: -542.999998795983, y: -185.99263924141783 },
  1187. tr: { x: -499.99999879598295, y: -185.99263924141783 },
  1188. l: { x: -585.999998795983, y: -142.99263924141783 },
  1189. r: { x: -499.99999879598295, y: -142.99263924141783 },
  1190. bl: { x: -585.999998795983, y: -99.99263924141783 },
  1191. bc: { x: -542.999998795983, y: -99.99263924141783 },
  1192. br: { x: -499.99999879598295, y: -99.99263924141783 },
  1193. },
  1194. name: 'connection_line',
  1195. title: '连接线',
  1196. type: 'ConnectionLine',
  1197. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  1198. display: true,
  1199. props: {
  1200. stroke: { title: '线条颜色', type: 'Color', val: '#ff0000' },
  1201. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  1202. point_position: {
  1203. title: '点坐标',
  1204. type: 'JsonEdit',
  1205. val: [
  1206. { x: 50, y: 50 },
  1207. { x: -36, y: 51 },
  1208. { x: -36, y: -35 },
  1209. { x: -34, y: -34 },
  1210. ],
  1211. },
  1212. },
  1213. animations: {
  1214. type: {
  1215. title: '动画类型',
  1216. type: 'Select',
  1217. val: 'None',
  1218. options: [
  1219. { label: '无', value: 'None' },
  1220. { label: '电流', value: 'Electricity' },
  1221. { label: '轨迹', value: 'Track' },
  1222. { label: '水珠', value: 'WaterDrop' },
  1223. ],
  1224. },
  1225. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  1226. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  1227. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  1228. reverse: { title: '反转动画', type: 'Switch', val: false },
  1229. },
  1230. bind_anchors: { start: { type: 'Right', target_id: 'arrowWVIq74qgBO' }, end: null },
  1231. },
  1232. {
  1233. id: 'connection_lineHE0iHAc7sh',
  1234. x: -107.99999879598295,
  1235. y: -139.99263924141783,
  1236. client: { x: -107.99999879598295, y: -139.99263924141783 },
  1237. scale_x: 1,
  1238. scale_y: 1,
  1239. rotate: 0,
  1240. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  1241. point_coordinate: {
  1242. tl: { x: -150.99999879598295, y: -182.99263924141783 },
  1243. tc: { x: -107.99999879598295, y: -182.99263924141783 },
  1244. tr: { x: -64.99999879598295, y: -182.99263924141783 },
  1245. l: { x: -150.99999879598295, y: -139.99263924141783 },
  1246. r: { x: -64.99999879598295, y: -139.99263924141783 },
  1247. bl: { x: -150.99999879598295, y: -96.99263924141783 },
  1248. bc: { x: -107.99999879598295, y: -96.99263924141783 },
  1249. br: { x: -64.99999879598295, y: -96.99263924141783 },
  1250. },
  1251. name: 'connection_line',
  1252. title: '连接线-copy',
  1253. type: 'ConnectionLine',
  1254. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  1255. display: true,
  1256. props: {
  1257. stroke: { title: '线条颜色', type: 'Color', val: '#ff0000' },
  1258. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  1259. point_position: {
  1260. title: '点坐标',
  1261. type: 'JsonEdit',
  1262. val: [
  1263. { x: -124, y: 49 },
  1264. { x: -35, y: 49 },
  1265. { x: -36, y: -35 },
  1266. { x: -34, y: -34 },
  1267. ],
  1268. },
  1269. },
  1270. animations: {
  1271. type: {
  1272. title: '动画类型',
  1273. type: 'Select',
  1274. val: 'None',
  1275. options: [
  1276. { label: '无', value: 'None' },
  1277. { label: '电流', value: 'Electricity' },
  1278. { label: '轨迹', value: 'Track' },
  1279. { label: '水珠', value: 'WaterDrop' },
  1280. ],
  1281. },
  1282. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  1283. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  1284. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  1285. reverse: { title: '反转动画', type: 'Switch', val: false },
  1286. },
  1287. bind_anchors: { start: { type: 'Right', target_id: 'arrowWVIq74qgBO' }, end: null },
  1288. },
  1289. {
  1290. id: 'straight-lineGewWfZACIy',
  1291. x: -688,
  1292. y: -222,
  1293. client: { x: 452, y: 146 },
  1294. scale_x: 1,
  1295. scale_y: 1,
  1296. rotate: 0,
  1297. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  1298. point_coordinate: {
  1299. tl: { x: -688.5, y: -284 },
  1300. tc: { x: -688, y: -284 },
  1301. tr: { x: -687.5, y: -284 },
  1302. l: { x: -688.5, y: -222 },
  1303. r: { x: -687.5, y: -222 },
  1304. bl: { x: -688.5, y: -160 },
  1305. bc: { x: -688, y: -160 },
  1306. br: { x: -687.5, y: -160 },
  1307. },
  1308. name: 'connection_line',
  1309. title: '连接线',
  1310. type: 'ConnectionLine',
  1311. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  1312. display: true,
  1313. props: {
  1314. stroke: { title: '线条颜色', type: 'Color', val: '#ff0000' },
  1315. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  1316. point_position: {
  1317. title: '点坐标',
  1318. type: 'JsonEdit',
  1319. val: [
  1320. { x: 50, y: 50 },
  1321. { x: 49, y: 174 },
  1322. ],
  1323. },
  1324. },
  1325. animations: {
  1326. type: {
  1327. title: '动画类型',
  1328. type: 'Select',
  1329. val: 'None',
  1330. options: [
  1331. { label: '无', value: 'None' },
  1332. { label: '电流', value: 'Electricity' },
  1333. { label: '轨迹', value: 'Track' },
  1334. { label: '水珠', value: 'WaterDrop' },
  1335. ],
  1336. },
  1337. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  1338. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  1339. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  1340. reverse: { title: '反转动画', type: 'Switch', val: false },
  1341. },
  1342. bind_anchors: { start: { type: 'BottomCenter', target_id: 'rect3OD1llFsFbQ' }, end: null },
  1343. },
  1344. {
  1345. id: 'connection_linekOe9aqybJ7',
  1346. x: -132,
  1347. y: -227,
  1348. client: { x: -132, y: -227 },
  1349. scale_x: 1,
  1350. scale_y: 1,
  1351. rotate: 0,
  1352. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  1353. point_coordinate: {
  1354. tl: { x: -132.5, y: -289 },
  1355. tc: { x: -132, y: -289 },
  1356. tr: { x: -131.5, y: -289 },
  1357. l: { x: -132.5, y: -227 },
  1358. r: { x: -131.5, y: -227 },
  1359. bl: { x: -132.5, y: -165 },
  1360. bc: { x: -132, y: -165 },
  1361. br: { x: -131.5, y: -165 },
  1362. },
  1363. name: 'connection_line',
  1364. title: '连接线-copy',
  1365. type: 'ConnectionLine',
  1366. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  1367. display: true,
  1368. props: {
  1369. stroke: { title: '线条颜色', type: 'Color', val: '#ff0000' },
  1370. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  1371. point_position: {
  1372. title: '点坐标',
  1373. type: 'JsonEdit',
  1374. val: [
  1375. { x: 50, y: 50 },
  1376. { x: 50, y: 180 },
  1377. ],
  1378. },
  1379. },
  1380. animations: {
  1381. type: {
  1382. title: '动画类型',
  1383. type: 'Select',
  1384. val: 'None',
  1385. options: [
  1386. { label: '无', value: 'None' },
  1387. { label: '电流', value: 'Electricity' },
  1388. { label: '轨迹', value: 'Track' },
  1389. { label: '水珠', value: 'WaterDrop' },
  1390. ],
  1391. },
  1392. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  1393. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  1394. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  1395. reverse: { title: '反转动画', type: 'Switch', val: false },
  1396. },
  1397. bind_anchors: { start: { type: 'BottomCenter', target_id: 'rect3OD1llFsFbQ' }, end: null },
  1398. },
  1399. {
  1400. id: 'rect1u3AJvpzHYv',
  1401. x: -689.5,
  1402. y: -63,
  1403. client: { x: -689.5, y: -63 },
  1404. scale_x: 0.7082353259023925,
  1405. scale_y: 0.7259259095159254,
  1406. rotate: 0,
  1407. actual_bound: { x: 19.64285659790039, y: 1.7857142686843872, width: 60.71428298950195, height: 96.42857360839844 },
  1408. point_coordinate: {
  1409. tl: { x: -711, y: -98 },
  1410. tc: { x: -689.5, y: -98 },
  1411. tr: { x: -668, y: -98 },
  1412. l: { x: -711, y: -63 },
  1413. r: { x: -668, y: -63 },
  1414. bl: { x: -711, y: -28 },
  1415. bc: { x: -689.5, y: -28 },
  1416. br: { x: -668, y: -28 },
  1417. },
  1418. name: 'rect1',
  1419. title: '矩形',
  1420. type: 'File',
  1421. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1422. display: true,
  1423. props: {},
  1424. state: {
  1425. OnOff: {
  1426. title: '开关',
  1427. default: false,
  1428. props: { stroke: { openVal: '#ff0000', closeVal: '#ff0000' }, fill: { openVal: '#ff0000', closeVal: '#ff000000' } },
  1429. },
  1430. },
  1431. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1432. },
  1433. {
  1434. id: 'rect1sMuXufr2Gk',
  1435. x: -133.5,
  1436. y: -63,
  1437. client: { x: -133.5, y: -69 },
  1438. scale_x: 0.7082353259023925,
  1439. scale_y: 0.7259259095159254,
  1440. rotate: 0,
  1441. actual_bound: { x: 19.64285659790039, y: 1.7857142686843872, width: 60.71428298950195, height: 96.42857360839844 },
  1442. point_coordinate: {
  1443. tl: { x: -155, y: -104 },
  1444. tc: { x: -133.5, y: -104 },
  1445. tr: { x: -112, y: -104 },
  1446. l: { x: -155, y: -69 },
  1447. r: { x: -112, y: -69 },
  1448. bl: { x: -155, y: -34 },
  1449. bc: { x: -133.5, y: -34 },
  1450. br: { x: -112, y: -34 },
  1451. },
  1452. name: 'rect1',
  1453. title: '矩形-copy',
  1454. type: 'File',
  1455. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1456. display: true,
  1457. props: {},
  1458. state: {
  1459. OnOff: {
  1460. title: '开关',
  1461. default: false,
  1462. props: { stroke: { openVal: '#ff0000', closeVal: '#ff0000' }, fill: { openVal: '#ff0000', closeVal: '#ff000000' } },
  1463. },
  1464. },
  1465. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1466. },
  1467. {
  1468. id: 'straight-linevfbRmEjOka',
  1469. x: -689.5,
  1470. y: -28,
  1471. client: { x: 452, y: 336 },
  1472. scale_x: 1,
  1473. scale_y: 1,
  1474. rotate: 0,
  1475. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  1476. point_coordinate: {
  1477. tl: { x: -690, y: -57.5 },
  1478. tc: { x: -689.5, y: -57.5 },
  1479. tr: { x: -689, y: -57.5 },
  1480. l: { x: -690, y: -28 },
  1481. r: { x: -689, y: -28 },
  1482. bl: { x: -690, y: 1.5 },
  1483. bc: { x: -689.5, y: 1.5 },
  1484. br: { x: -689, y: 1.5 },
  1485. },
  1486. name: 'connection_line',
  1487. title: 'changeLine',
  1488. type: 'ConnectionLine',
  1489. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  1490. display: true,
  1491. props: {
  1492. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  1493. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  1494. point_position: {
  1495. title: '点坐标',
  1496. type: 'JsonEdit',
  1497. val: [
  1498. { x: 50, y: 50 },
  1499. { x: 49, y: 109 },
  1500. ],
  1501. },
  1502. },
  1503. animations: {
  1504. type: {
  1505. title: '动画类型',
  1506. type: 'Select',
  1507. val: 'None',
  1508. options: [
  1509. { label: '无', value: 'None' },
  1510. { label: '电流', value: 'Electricity' },
  1511. { label: '轨迹', value: 'Track' },
  1512. { label: '水珠', value: 'WaterDrop' },
  1513. ],
  1514. },
  1515. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  1516. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  1517. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  1518. reverse: { title: '反转动画', type: 'Switch', val: false },
  1519. },
  1520. bind_anchors: { start: { type: 'BottomCenter', target_id: 'rect1u3AJvpzHYv' }, end: null },
  1521. },
  1522. {
  1523. id: 'connection_line8SKNmdI7NY',
  1524. x: -133.5,
  1525. y: -27,
  1526. client: { x: -133.5, y: -27 },
  1527. scale_x: 1,
  1528. scale_y: 1,
  1529. rotate: 0,
  1530. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  1531. point_coordinate: {
  1532. tl: { x: -134, y: -56.5 },
  1533. tc: { x: -133.5, y: -56.5 },
  1534. tr: { x: -133, y: -56.5 },
  1535. l: { x: -134, y: -27 },
  1536. r: { x: -133, y: -27 },
  1537. bl: { x: -134, y: 2.5 },
  1538. bc: { x: -133.5, y: 2.5 },
  1539. br: { x: -133, y: 2.5 },
  1540. },
  1541. name: 'connection_line',
  1542. title: 'changeLine',
  1543. type: 'ConnectionLine',
  1544. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  1545. display: true,
  1546. props: {
  1547. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  1548. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  1549. point_position: {
  1550. title: '点坐标',
  1551. type: 'JsonEdit',
  1552. val: [
  1553. { x: 50, y: 50 },
  1554. { x: 49, y: 109 },
  1555. ],
  1556. },
  1557. },
  1558. animations: {
  1559. type: {
  1560. title: '动画类型',
  1561. type: 'Select',
  1562. val: 'None',
  1563. options: [
  1564. { label: '无', value: 'None' },
  1565. { label: '电流', value: 'Electricity' },
  1566. { label: '轨迹', value: 'Track' },
  1567. { label: '水珠', value: 'WaterDrop' },
  1568. ],
  1569. },
  1570. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  1571. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  1572. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  1573. reverse: { title: '反转动画', type: 'Switch', val: false },
  1574. },
  1575. bind_anchors: { start: { type: 'BottomCenter', target_id: 'rect1u3AJvpzHYv' }, end: null },
  1576. },
  1577. {
  1578. id: 'electric-transformerRBBJGgk12b',
  1579. x: -687,
  1580. y: 81,
  1581. client: { x: -687, y: 81 },
  1582. scale_x: 1,
  1583. scale_y: 1,
  1584. rotate: 0,
  1585. actual_bound: { x: 1, y: 1, width: 88, height: 160 },
  1586. point_coordinate: {
  1587. tl: { x: -731, y: 1 },
  1588. tc: { x: -687, y: 1 },
  1589. tr: { x: -643, y: 1 },
  1590. l: { x: -731, y: 81 },
  1591. r: { x: -643, y: 81 },
  1592. bl: { x: -731, y: 161 },
  1593. bc: { x: -687, y: 161 },
  1594. br: { x: -643, y: 161 },
  1595. },
  1596. name: 'electric-transformer',
  1597. title: '变压器',
  1598. tag: 'electric-transformer',
  1599. type: 'CustomSvg',
  1600. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1601. display: true,
  1602. props: { isOpen: { title: '开关', type: 'Switch', val: false } },
  1603. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1604. },
  1605. {
  1606. id: 'electric-transformerWFdpgdmG1o',
  1607. x: -129,
  1608. y: 80,
  1609. client: { x: -129, y: 80 },
  1610. scale_x: 1,
  1611. scale_y: 1,
  1612. rotate: 0,
  1613. actual_bound: { x: 1, y: 1, width: 88, height: 160 },
  1614. point_coordinate: {
  1615. tl: { x: -173, y: 0 },
  1616. tc: { x: -129, y: 0 },
  1617. tr: { x: -85, y: 0 },
  1618. l: { x: -173, y: 80 },
  1619. r: { x: -85, y: 80 },
  1620. bl: { x: -173, y: 160 },
  1621. bc: { x: -129, y: 160 },
  1622. br: { x: -85, y: 160 },
  1623. },
  1624. name: 'electric-transformer',
  1625. title: '变压器-copy',
  1626. tag: 'electric-transformer',
  1627. type: 'CustomSvg',
  1628. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1629. display: true,
  1630. props: { isOpen: { title: '开关', type: 'Switch', val: false } },
  1631. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1632. },
  1633. {
  1634. id: 'straight-lineQunQ4hosc2',
  1635. x: -692,
  1636. y: 193,
  1637. client: { x: -692, y: 193 },
  1638. scale_x: 1,
  1639. scale_y: 1,
  1640. rotate: 0,
  1641. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  1642. point_coordinate: {
  1643. tl: { x: -692, y: 114.5 },
  1644. tc: { x: -692, y: 114.5 },
  1645. tr: { x: -692, y: 114.5 },
  1646. l: { x: -692, y: 193 },
  1647. r: { x: -692, y: 193 },
  1648. bl: { x: -692, y: 271.5 },
  1649. bc: { x: -692, y: 271.5 },
  1650. br: { x: -692, y: 271.5 },
  1651. },
  1652. name: 'connection_line',
  1653. title: 'changeLine',
  1654. type: 'ConnectionLine',
  1655. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  1656. display: true,
  1657. props: {
  1658. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  1659. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  1660. point_position: {
  1661. title: '点坐标',
  1662. type: 'JsonEdit',
  1663. val: [
  1664. { x: 50, y: 50 },
  1665. { x: 50, y: 207 },
  1666. { x: 50, y: 207 },
  1667. ],
  1668. },
  1669. },
  1670. animations: {
  1671. type: {
  1672. title: '动画类型',
  1673. type: 'Select',
  1674. val: 'None',
  1675. options: [
  1676. { label: '无', value: 'None' },
  1677. { label: '电流', value: 'Electricity' },
  1678. { label: '轨迹', value: 'Track' },
  1679. { label: '水珠', value: 'WaterDrop' },
  1680. ],
  1681. },
  1682. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  1683. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  1684. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  1685. reverse: { title: '反转动画', type: 'Switch', val: false },
  1686. },
  1687. bind_anchors: { start: { type: 'BottomCenter', target_id: 'electric-transformerRBBJGgk12b' }, end: null },
  1688. },
  1689. {
  1690. id: 'connection_lineVp68SNcEFL',
  1691. x: -132,
  1692. y: 192,
  1693. client: { x: -134, y: 193 },
  1694. scale_x: 1,
  1695. scale_y: 1,
  1696. rotate: 0,
  1697. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  1698. point_coordinate: {
  1699. tl: { x: -134, y: 114.5 },
  1700. tc: { x: -134, y: 114.5 },
  1701. tr: { x: -134, y: 114.5 },
  1702. l: { x: -134, y: 193 },
  1703. r: { x: -134, y: 193 },
  1704. bl: { x: -134, y: 271.5 },
  1705. bc: { x: -134, y: 271.5 },
  1706. br: { x: -134, y: 271.5 },
  1707. },
  1708. name: 'connection_line',
  1709. title: 'changeLine',
  1710. type: 'ConnectionLine',
  1711. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  1712. display: true,
  1713. props: {
  1714. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  1715. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  1716. point_position: {
  1717. title: '点坐标',
  1718. type: 'JsonEdit',
  1719. val: [
  1720. { x: 50, y: 50 },
  1721. { x: 50, y: 207 },
  1722. { x: 50, y: 207 },
  1723. ],
  1724. },
  1725. },
  1726. animations: {
  1727. type: {
  1728. title: '动画类型',
  1729. type: 'Select',
  1730. val: 'None',
  1731. options: [
  1732. { label: '无', value: 'None' },
  1733. { label: '电流', value: 'Electricity' },
  1734. { label: '轨迹', value: 'Track' },
  1735. { label: '水珠', value: 'WaterDrop' },
  1736. ],
  1737. },
  1738. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  1739. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  1740. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  1741. reverse: { title: '反转动画', type: 'Switch', val: false },
  1742. },
  1743. bind_anchors: { start: { type: 'BottomCenter', target_id: 'electric-transformerRBBJGgk12b' }, end: null },
  1744. },
  1745. {
  1746. id: 'rect2b2ua906HAT',
  1747. x: -695,
  1748. y: 266.5,
  1749. client: { x: -695, y: 266.5 },
  1750. scale_x: 0.677647070988322,
  1751. scale_y: 0.5039999846191411,
  1752. rotate: 0,
  1753. actual_bound: { x: 2.777777671813965, y: 41.66666793823242, width: 94.44444274902344, height: 13.88888931274414 },
  1754. point_coordinate: {
  1755. tl: { x: -727, y: 263 },
  1756. tc: { x: -695, y: 263 },
  1757. tr: { x: -663, y: 263 },
  1758. l: { x: -727, y: 266.5 },
  1759. r: { x: -663, y: 266.5 },
  1760. bl: { x: -727, y: 270 },
  1761. bc: { x: -695, y: 270 },
  1762. br: { x: -663, y: 270 },
  1763. },
  1764. name: 'rect2',
  1765. title: '矩形',
  1766. type: 'File',
  1767. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1768. display: true,
  1769. props: {},
  1770. state: { OnOff: { title: '开关', default: false, props: { fill: { openVal: '#ff0000', closeVal: '#ffff00' } } } },
  1771. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1772. },
  1773. {
  1774. id: 'rect2iNmTsLMCnq',
  1775. x: -132,
  1776. y: 268.5,
  1777. client: { x: -132, y: 268.5 },
  1778. scale_x: 0.677647070988322,
  1779. scale_y: 0.5039999846191411,
  1780. rotate: 0,
  1781. actual_bound: { x: 2.777777671813965, y: 41.66666793823242, width: 94.44444274902344, height: 13.88888931274414 },
  1782. point_coordinate: {
  1783. tl: { x: -164, y: 265 },
  1784. tc: { x: -132, y: 265 },
  1785. tr: { x: -100, y: 265 },
  1786. l: { x: -164, y: 268.5 },
  1787. r: { x: -100, y: 268.5 },
  1788. bl: { x: -164, y: 272 },
  1789. bc: { x: -132, y: 272 },
  1790. br: { x: -100, y: 272 },
  1791. },
  1792. name: 'rect2',
  1793. title: '矩形-copy',
  1794. type: 'File',
  1795. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1796. display: true,
  1797. props: {},
  1798. state: { OnOff: { title: '开关', default: false, props: { fill: { openVal: '#ff0000', closeVal: '#ffff00' } } } },
  1799. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1800. },
  1801. {
  1802. id: 'rectiQQbMJHYM9',
  1803. x: -692.5,
  1804. y: 388.5,
  1805. client: { x: -692.5, y: 388.5 },
  1806. scale_x: 0.7411765038513409,
  1807. scale_y: 0.7777777601956344,
  1808. rotate: 0,
  1809. actual_bound: { x: 19.64285659790039, y: 1.7857142686843872, width: 60.71428298950195, height: 96.42857360839844 },
  1810. point_coordinate: {
  1811. tl: { x: -715, y: 351 },
  1812. tc: { x: -692.5, y: 351 },
  1813. tr: { x: -670, y: 351 },
  1814. l: { x: -715, y: 388.5 },
  1815. r: { x: -670, y: 388.5 },
  1816. bl: { x: -715, y: 426 },
  1817. bc: { x: -692.5, y: 426 },
  1818. br: { x: -670, y: 426 },
  1819. },
  1820. name: 'rect',
  1821. title: '矩形',
  1822. type: 'File',
  1823. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1824. display: true,
  1825. props: {},
  1826. state: {
  1827. OnOff: {
  1828. title: '开关',
  1829. default: false,
  1830. props: { stroke: { openVal: '#00ff00', closeVal: '#ffff00' }, fill: { openVal: '#00ff00', closeVal: '#ff000000' } },
  1831. },
  1832. },
  1833. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1834. },
  1835. {
  1836. id: 'rectjl8XE7uvYW',
  1837. x: -132.5,
  1838. y: 387.5,
  1839. client: { x: -132.5, y: 382.5 },
  1840. scale_x: 0.7411765038513409,
  1841. scale_y: 0.7777777601956344,
  1842. rotate: 0,
  1843. actual_bound: { x: 19.64285659790039, y: 1.7857142686843872, width: 60.71428298950195, height: 96.42857360839844 },
  1844. point_coordinate: {
  1845. tl: { x: -155, y: 345 },
  1846. tc: { x: -132.5, y: 345 },
  1847. tr: { x: -110, y: 345 },
  1848. l: { x: -155, y: 382.5 },
  1849. r: { x: -110, y: 382.5 },
  1850. bl: { x: -155, y: 420 },
  1851. bc: { x: -132.5, y: 420 },
  1852. br: { x: -110, y: 420 },
  1853. },
  1854. name: 'rect',
  1855. title: '矩形-copy',
  1856. type: 'File',
  1857. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1858. display: true,
  1859. props: {},
  1860. state: {
  1861. OnOff: {
  1862. title: '开关',
  1863. default: false,
  1864. props: { stroke: { openVal: '#00ff00', closeVal: '#ffff00' }, fill: { openVal: '#00ff00', closeVal: '#ff000000' } },
  1865. },
  1866. },
  1867. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1868. },
  1869. {
  1870. id: 'arrow-linetgtW9T3tlM',
  1871. x: -693,
  1872. y: 477,
  1873. client: { x: -693, y: 477 },
  1874. scale_x: 1,
  1875. scale_y: 1,
  1876. rotate: 0,
  1877. actual_bound: { x: 40.88562774658203, y: -0.0006357083912007511, width: 18.227031707763672, height: 95.88262176513672 },
  1878. point_coordinate: {
  1879. tl: { x: -702.1135158538818, y: 429.05868911743164 },
  1880. tc: { x: -693, y: 429.05868911743164 },
  1881. tr: { x: -683.8864841461182, y: 429.05868911743164 },
  1882. l: { x: -702.1135158538818, y: 477 },
  1883. r: { x: -683.8864841461182, y: 477 },
  1884. bl: { x: -702.1135158538818, y: 524.9413108825684 },
  1885. bc: { x: -693, y: 524.9413108825684 },
  1886. br: { x: -683.8864841461182, y: 524.9413108825684 },
  1887. },
  1888. name: 'arrow-line',
  1889. title: '箭头1',
  1890. type: 'File',
  1891. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1892. display: true,
  1893. state: {
  1894. OnOff: {
  1895. title: '开关',
  1896. default: false,
  1897. props: { stroke: { openVal: '#00ff00', closeVal: '#ffff00' }, fill: { openVal: '#00ff00', closeVal: '#ff000000' } },
  1898. },
  1899. },
  1900. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1901. },
  1902. {
  1903. id: 'arrow-lineB8uDtRCKgx',
  1904. x: -133,
  1905. y: 477,
  1906. client: { x: -134, y: 476 },
  1907. scale_x: 1,
  1908. scale_y: 1,
  1909. rotate: 0,
  1910. actual_bound: { x: 40.88562774658203, y: -0.0006357083912007511, width: 18.227031707763672, height: 95.88262176513672 },
  1911. point_coordinate: {
  1912. tl: { x: -143.11351585388184, y: 428.05868911743164 },
  1913. tc: { x: -134, y: 428.05868911743164 },
  1914. tr: { x: -124.88648414611816, y: 428.05868911743164 },
  1915. l: { x: -143.11351585388184, y: 476 },
  1916. r: { x: -124.88648414611816, y: 476 },
  1917. bl: { x: -143.11351585388184, y: 523.9413108825684 },
  1918. bc: { x: -134, y: 523.9413108825684 },
  1919. br: { x: -124.88648414611816, y: 523.9413108825684 },
  1920. },
  1921. name: 'arrow-line',
  1922. title: '箭头1-copy',
  1923. type: 'File',
  1924. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  1925. display: true,
  1926. state: {
  1927. OnOff: {
  1928. title: '开关',
  1929. default: false,
  1930. props: { stroke: { openVal: '#00ff00', closeVal: '#ffff00' }, fill: { openVal: '#00ff00', closeVal: '#ff000000' } },
  1931. },
  1932. },
  1933. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  1934. },
  1935. {
  1936. id: 'straight-linewAYhKBlISA',
  1937. x: -693,
  1938. y: 524.9413108825684,
  1939. client: { x: 450, y: 889 },
  1940. scale_x: 1,
  1941. scale_y: 1,
  1942. rotate: 0,
  1943. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  1944. point_coordinate: {
  1945. tl: { x: -742, y: 393.94131088256836 },
  1946. tc: { x: -693, y: 393.94131088256836 },
  1947. tr: { x: -644, y: 393.94131088256836 },
  1948. l: { x: -742, y: 524.9413108825684 },
  1949. r: { x: -644, y: 524.9413108825684 },
  1950. bl: { x: -742, y: 655.9413108825684 },
  1951. bc: { x: -693, y: 655.9413108825684 },
  1952. br: { x: -644, y: 655.9413108825684 },
  1953. },
  1954. name: 'connection_line',
  1955. title: 'changeLine',
  1956. type: 'ConnectionLine',
  1957. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  1958. display: true,
  1959. props: {
  1960. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  1961. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  1962. point_position: {
  1963. title: '点坐标',
  1964. type: 'JsonEdit',
  1965. val: [
  1966. { x: 50, y: 50 },
  1967. { x: 134, y: 50 },
  1968. { x: 135, y: -205 },
  1969. { x: 140, y: -209 },
  1970. ],
  1971. },
  1972. },
  1973. animations: {
  1974. type: {
  1975. title: '动画类型',
  1976. type: 'Select',
  1977. val: 'None',
  1978. options: [
  1979. { label: '无', value: 'None' },
  1980. { label: '电流', value: 'Electricity' },
  1981. { label: '轨迹', value: 'Track' },
  1982. { label: '水珠', value: 'WaterDrop' },
  1983. ],
  1984. },
  1985. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  1986. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  1987. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  1988. reverse: { title: '反转动画', type: 'Switch', val: false },
  1989. },
  1990. bind_anchors: { start: { type: 'BottomCenter', target_id: 'arrow-linetgtW9T3tlM' }, end: null },
  1991. },
  1992. {
  1993. id: 'connection_linezKEzYcoJeW',
  1994. x: -335,
  1995. y: 524.9413108825684,
  1996. client: { x: -335, y: 524.9413108825684 },
  1997. scale_x: 1,
  1998. scale_y: 1,
  1999. rotate: 0,
  2000. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  2001. point_coordinate: {
  2002. tl: { x: -388, y: 393.94131088256836 },
  2003. tc: { x: -335, y: 393.94131088256836 },
  2004. tr: { x: -282, y: 393.94131088256836 },
  2005. l: { x: -388, y: 524.9413108825684 },
  2006. r: { x: -282, y: 524.9413108825684 },
  2007. bl: { x: -388, y: 655.9413108825684 },
  2008. bc: { x: -335, y: 655.9413108825684 },
  2009. br: { x: -282, y: 655.9413108825684 },
  2010. },
  2011. name: 'connection_line',
  2012. title: 'changeLine',
  2013. type: 'ConnectionLine',
  2014. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  2015. display: true,
  2016. props: {
  2017. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  2018. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  2019. point_position: {
  2020. title: '点坐标',
  2021. type: 'JsonEdit',
  2022. val: [
  2023. { x: 253, y: 50 },
  2024. { x: 172, y: 51 },
  2025. { x: 173, y: -208 },
  2026. { x: 173, y: -208 },
  2027. ],
  2028. },
  2029. },
  2030. animations: {
  2031. type: {
  2032. title: '动画类型',
  2033. type: 'Select',
  2034. val: 'None',
  2035. options: [
  2036. { label: '无', value: 'None' },
  2037. { label: '电流', value: 'Electricity' },
  2038. { label: '轨迹', value: 'Track' },
  2039. { label: '水珠', value: 'WaterDrop' },
  2040. ],
  2041. },
  2042. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  2043. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  2044. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  2045. reverse: { title: '反转动画', type: 'Switch', val: false },
  2046. },
  2047. bind_anchors: { start: { type: 'BottomCenter', target_id: 'arrow-linetgtW9T3tlM' }, end: null },
  2048. },
  2049. {
  2050. id: 'rect20w5PJBsB2x',
  2051. x: -539.5,
  2052. y: 268.5,
  2053. client: { x: -539.5, y: 268.5 },
  2054. scale_x: 1.810588267796923,
  2055. scale_y: 0.5039999846191411,
  2056. rotate: 0,
  2057. actual_bound: { x: 2.777777671813965, y: 41.66666793823242, width: 94.44444274902344, height: 13.88888931274414 },
  2058. point_coordinate: {
  2059. tl: { x: -625, y: 265 },
  2060. tc: { x: -539.5, y: 265 },
  2061. tr: { x: -454, y: 265 },
  2062. l: { x: -625, y: 268.5 },
  2063. r: { x: -454, y: 268.5 },
  2064. bl: { x: -625, y: 272 },
  2065. bc: { x: -539.5, y: 272 },
  2066. br: { x: -454, y: 272 },
  2067. },
  2068. name: 'rect2',
  2069. title: '矩形',
  2070. type: 'File',
  2071. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2072. display: true,
  2073. props: {},
  2074. state: { OnOff: { title: '开关', default: false, props: { fill: { openVal: '#ff0000', closeVal: '#ffff00' } } } },
  2075. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2076. },
  2077. {
  2078. id: 'rect2RxYeI9K6JU',
  2079. x: -272.5,
  2080. y: 267.5,
  2081. client: { x: -272.5, y: 267.5 },
  2082. scale_x: 1.810588267796923,
  2083. scale_y: 0.5039999846191411,
  2084. rotate: 0,
  2085. actual_bound: { x: 2.777777671813965, y: 41.66666793823242, width: 94.44444274902344, height: 13.88888931274414 },
  2086. point_coordinate: {
  2087. tl: { x: -358, y: 264 },
  2088. tc: { x: -272.5, y: 264 },
  2089. tr: { x: -187, y: 264 },
  2090. l: { x: -358, y: 267.5 },
  2091. r: { x: -187, y: 267.5 },
  2092. bl: { x: -358, y: 271 },
  2093. bc: { x: -272.5, y: 271 },
  2094. br: { x: -187, y: 271 },
  2095. },
  2096. name: 'rect2',
  2097. title: '矩形-copy',
  2098. type: 'File',
  2099. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2100. display: true,
  2101. props: {},
  2102. state: { OnOff: { title: '开关', default: false, props: { fill: { openVal: '#ff0000', closeVal: '#ffff00' } } } },
  2103. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2104. },
  2105. {
  2106. id: 'custom-svg-text662jqUKDwd',
  2107. x: -102,
  2108. y: -64,
  2109. client: { x: -102, y: -64 },
  2110. scale_x: 1,
  2111. scale_y: 1,
  2112. rotate: 0,
  2113. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  2114. point_coordinate: {
  2115. tl: { x: -117.5, y: -74 },
  2116. tc: { x: -102, y: -74 },
  2117. tr: { x: -86.5, y: -74 },
  2118. l: { x: -117.5, y: -64 },
  2119. r: { x: -86.5, y: -64 },
  2120. bl: { x: -117.5, y: -54 },
  2121. bc: { x: -102, y: -54 },
  2122. br: { x: -86.5, y: -54 },
  2123. },
  2124. name: 'custom-svg-text',
  2125. title: '文字',
  2126. tag: 'custom-svg-text',
  2127. type: 'CustomSvg',
  2128. display: true,
  2129. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2130. props: {
  2131. text: { title: '文字内容', type: 'Input', val: '主风机移变' },
  2132. fontFamily: {
  2133. title: '字体',
  2134. type: 'Select',
  2135. val: 'Microsoft YaHei',
  2136. options: [
  2137. { value: 'Microsoft YaHei', label: '微软雅黑' },
  2138. { value: 'NSimSun', label: '新宋体' },
  2139. ],
  2140. },
  2141. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  2142. fill: { title: '文字颜色', type: 'Color', val: '#FFFFFF' },
  2143. },
  2144. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2145. },
  2146. {
  2147. id: 'straight-lineqQLg7eRl0i',
  2148. x: -502,
  2149. y: 295,
  2150. client: { x: -485, y: 314 },
  2151. scale_x: 1,
  2152. scale_y: 1,
  2153. rotate: 0,
  2154. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  2155. point_coordinate: {
  2156. tl: { x: -512, y: 314 },
  2157. tc: { x: -485, y: 314 },
  2158. tr: { x: -458, y: 314 },
  2159. l: { x: -512, y: 314 },
  2160. r: { x: -458, y: 314 },
  2161. bl: { x: -512, y: 314 },
  2162. bc: { x: -485, y: 314 },
  2163. br: { x: -458, y: 314 },
  2164. },
  2165. name: 'connection_line',
  2166. title: 'changeLine',
  2167. type: 'ConnectionLine',
  2168. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  2169. display: true,
  2170. props: {
  2171. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  2172. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  2173. point_position: {
  2174. title: '点坐标',
  2175. type: 'JsonEdit',
  2176. val: [
  2177. { x: 51, y: 50 },
  2178. { x: 97, y: 50 },
  2179. ],
  2180. },
  2181. },
  2182. animations: {
  2183. type: {
  2184. title: '动画类型',
  2185. type: 'Select',
  2186. val: 'None',
  2187. options: [
  2188. { label: '无', value: 'None' },
  2189. { label: '电流', value: 'Electricity' },
  2190. { label: '轨迹', value: 'Track' },
  2191. { label: '水珠', value: 'WaterDrop' },
  2192. ],
  2193. },
  2194. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  2195. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  2196. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  2197. reverse: { title: '反转动画', type: 'Switch', val: false },
  2198. },
  2199. bind_anchors: { start: { type: 'TopCenter', target_id: 'custom-svg-text662jqUKDwd' }, end: null },
  2200. },
  2201. {
  2202. id: 'connection_linek2NgvxH4Nd',
  2203. x: -554,
  2204. y: 294,
  2205. client: { x: -538, y: 313 },
  2206. scale_x: 1,
  2207. scale_y: 1,
  2208. rotate: 0,
  2209. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  2210. point_coordinate: {
  2211. tl: { x: -565, y: 313 },
  2212. tc: { x: -538, y: 313 },
  2213. tr: { x: -511, y: 313 },
  2214. l: { x: -565, y: 313 },
  2215. r: { x: -511, y: 313 },
  2216. bl: { x: -565, y: 313 },
  2217. bc: { x: -538, y: 313 },
  2218. br: { x: -511, y: 313 },
  2219. },
  2220. name: 'connection_line',
  2221. title: 'changeLine',
  2222. type: 'ConnectionLine',
  2223. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  2224. display: true,
  2225. props: {
  2226. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  2227. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  2228. point_position: {
  2229. title: '点坐标',
  2230. type: 'JsonEdit',
  2231. val: [
  2232. { x: 59, y: 51 },
  2233. { x: 103, y: 51 },
  2234. ],
  2235. },
  2236. },
  2237. animations: {
  2238. type: {
  2239. title: '动画类型',
  2240. type: 'Select',
  2241. val: 'None',
  2242. options: [
  2243. { label: '无', value: 'None' },
  2244. { label: '电流', value: 'Electricity' },
  2245. { label: '轨迹', value: 'Track' },
  2246. { label: '水珠', value: 'WaterDrop' },
  2247. ],
  2248. },
  2249. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  2250. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  2251. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  2252. reverse: { title: '反转动画', type: 'Switch', val: false },
  2253. },
  2254. bind_anchors: { start: { type: 'TopCenter', target_id: 'custom-svg-text662jqUKDwd' }, end: null },
  2255. },
  2256. {
  2257. id: 'connection_lineZu9slDCUUd',
  2258. x: -321,
  2259. y: 293,
  2260. client: { x: -321, y: 314 },
  2261. scale_x: 1,
  2262. scale_y: 1,
  2263. rotate: 0,
  2264. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  2265. point_coordinate: {
  2266. tl: { x: -343.5, y: 314 },
  2267. tc: { x: -321, y: 314 },
  2268. tr: { x: -298.5, y: 314 },
  2269. l: { x: -343.5, y: 314 },
  2270. r: { x: -298.5, y: 314 },
  2271. bl: { x: -343.5, y: 314 },
  2272. bc: { x: -321, y: 314 },
  2273. br: { x: -298.5, y: 314 },
  2274. },
  2275. name: 'connection_line',
  2276. title: 'changeLine',
  2277. type: 'ConnectionLine',
  2278. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  2279. display: true,
  2280. props: {
  2281. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  2282. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  2283. point_position: {
  2284. title: '点坐标',
  2285. type: 'JsonEdit',
  2286. val: [
  2287. { x: 50, y: 50 },
  2288. { x: 95, y: 50 },
  2289. ],
  2290. },
  2291. },
  2292. animations: {
  2293. type: {
  2294. title: '动画类型',
  2295. type: 'Select',
  2296. val: 'None',
  2297. options: [
  2298. { label: '无', value: 'None' },
  2299. { label: '电流', value: 'Electricity' },
  2300. { label: '轨迹', value: 'Track' },
  2301. { label: '水珠', value: 'WaterDrop' },
  2302. ],
  2303. },
  2304. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  2305. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  2306. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  2307. reverse: { title: '反转动画', type: 'Switch', val: false },
  2308. },
  2309. bind_anchors: { start: { type: 'TopCenter', target_id: 'custom-svg-text662jqUKDwd' }, end: null },
  2310. },
  2311. {
  2312. id: 'connection_linelZOGc5aG2N',
  2313. x: -375,
  2314. y: 292,
  2315. client: { x: -399, y: 313 },
  2316. scale_x: 1,
  2317. scale_y: 1,
  2318. rotate: 0,
  2319. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  2320. point_coordinate: {
  2321. tl: { x: -426, y: 313 },
  2322. tc: { x: -399, y: 313 },
  2323. tr: { x: -372, y: 313 },
  2324. l: { x: -426, y: 313 },
  2325. r: { x: -372, y: 313 },
  2326. bl: { x: -426, y: 313 },
  2327. bc: { x: -399, y: 313 },
  2328. br: { x: -372, y: 313 },
  2329. },
  2330. name: 'connection_line',
  2331. title: 'changeLine',
  2332. type: 'ConnectionLine',
  2333. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  2334. display: true,
  2335. props: {
  2336. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  2337. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  2338. point_position: {
  2339. title: '点坐标',
  2340. type: 'JsonEdit',
  2341. val: [
  2342. { x: 61, y: 51 },
  2343. { x: 103, y: 51 },
  2344. ],
  2345. },
  2346. },
  2347. animations: {
  2348. type: {
  2349. title: '动画类型',
  2350. type: 'Select',
  2351. val: 'None',
  2352. options: [
  2353. { label: '无', value: 'None' },
  2354. { label: '电流', value: 'Electricity' },
  2355. { label: '轨迹', value: 'Track' },
  2356. { label: '水珠', value: 'WaterDrop' },
  2357. ],
  2358. },
  2359. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  2360. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  2361. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  2362. reverse: { title: '反转动画', type: 'Switch', val: false },
  2363. },
  2364. bind_anchors: { start: { type: 'TopCenter', target_id: 'custom-svg-text662jqUKDwd' }, end: null },
  2365. },
  2366. {
  2367. id: 'connection_linePOFwnnzvAq',
  2368. x: -546,
  2369. y: 343,
  2370. client: { x: -546, y: 365 },
  2371. scale_x: 1,
  2372. scale_y: 1,
  2373. rotate: 0,
  2374. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  2375. point_coordinate: {
  2376. tl: { x: -546.5, y: 342.5 },
  2377. tc: { x: -546, y: 342.5 },
  2378. tr: { x: -545.5, y: 342.5 },
  2379. l: { x: -546.5, y: 365 },
  2380. r: { x: -545.5, y: 365 },
  2381. bl: { x: -546.5, y: 387.5 },
  2382. bc: { x: -546, y: 387.5 },
  2383. br: { x: -545.5, y: 387.5 },
  2384. },
  2385. name: 'connection_line',
  2386. title: 'changeLine',
  2387. type: 'ConnectionLine',
  2388. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  2389. display: true,
  2390. props: {
  2391. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  2392. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  2393. point_position: {
  2394. title: '点坐标',
  2395. type: 'JsonEdit',
  2396. val: [
  2397. { x: 51, y: 32 },
  2398. { x: 51, y: 2 },
  2399. ],
  2400. },
  2401. },
  2402. animations: {
  2403. type: {
  2404. title: '动画类型',
  2405. type: 'Select',
  2406. val: 'None',
  2407. options: [
  2408. { label: '无', value: 'None' },
  2409. { label: '电流', value: 'Electricity' },
  2410. { label: '轨迹', value: 'Track' },
  2411. { label: '水珠', value: 'WaterDrop' },
  2412. ],
  2413. },
  2414. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  2415. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  2416. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  2417. reverse: { title: '反转动画', type: 'Switch', val: false },
  2418. },
  2419. bind_anchors: { start: { type: 'TopCenter', target_id: 'custom-svg-text662jqUKDwd' }, end: null },
  2420. },
  2421. {
  2422. id: 'electric-breakerfztlV6HGOI',
  2423. x: -568,
  2424. y: 375,
  2425. client: { x: -568, y: 393 },
  2426. scale_x: 1,
  2427. scale_y: 1,
  2428. rotate: 0,
  2429. actual_bound: { x: 28.222497940063477, y: 0.8181726336479187, width: 44.1177978515625, height: 98.3599624633789 },
  2430. point_coordinate: {
  2431. tl: { x: -590.0588989257812, y: 343.82001876831055 },
  2432. tc: { x: -568, y: 343.82001876831055 },
  2433. tr: { x: -545.9411010742188, y: 343.82001876831055 },
  2434. l: { x: -590.0588989257812, y: 393 },
  2435. r: { x: -545.9411010742188, y: 393 },
  2436. bl: { x: -590.0588989257812, y: 442.17998123168945 },
  2437. bc: { x: -568, y: 442.17998123168945 },
  2438. br: { x: -545.9411010742188, y: 442.17998123168945 },
  2439. },
  2440. name: 'electric-breaker',
  2441. title: '电源断路器',
  2442. tag: 'electric-breaker',
  2443. type: 'CustomSvg',
  2444. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2445. display: true,
  2446. props: {
  2447. stroke: { title: '边框色', type: 'Color', val: '#00ff00' },
  2448. fill: { title: '填充色', type: 'Color', val: '#00ff00' },
  2449. isOpen: { title: '开关', type: 'Switch', val: false },
  2450. },
  2451. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2452. },
  2453. {
  2454. id: 'connection_line26MoSsACzZ',
  2455. x: -456,
  2456. y: 343,
  2457. client: { x: -456, y: 365 },
  2458. scale_x: 1,
  2459. scale_y: 1,
  2460. rotate: 0,
  2461. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  2462. point_coordinate: {
  2463. tl: { x: -456.5, y: 342.5 },
  2464. tc: { x: -456, y: 342.5 },
  2465. tr: { x: -455.5, y: 342.5 },
  2466. l: { x: -456.5, y: 365 },
  2467. r: { x: -455.5, y: 365 },
  2468. bl: { x: -456.5, y: 387.5 },
  2469. bc: { x: -456, y: 387.5 },
  2470. br: { x: -455.5, y: 387.5 },
  2471. },
  2472. name: 'connection_line',
  2473. title: 'changeLine',
  2474. type: 'ConnectionLine',
  2475. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  2476. display: true,
  2477. props: {
  2478. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  2479. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  2480. point_position: {
  2481. title: '点坐标',
  2482. type: 'JsonEdit',
  2483. val: [
  2484. { x: 50, y: 33 },
  2485. { x: 51, y: 2 },
  2486. ],
  2487. },
  2488. },
  2489. animations: {
  2490. type: {
  2491. title: '动画类型',
  2492. type: 'Select',
  2493. val: 'None',
  2494. options: [
  2495. { label: '无', value: 'None' },
  2496. { label: '电流', value: 'Electricity' },
  2497. { label: '轨迹', value: 'Track' },
  2498. { label: '水珠', value: 'WaterDrop' },
  2499. ],
  2500. },
  2501. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  2502. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  2503. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  2504. reverse: { title: '反转动画', type: 'Switch', val: false },
  2505. },
  2506. bind_anchors: { start: { type: 'TopCenter', target_id: 'custom-svg-text662jqUKDwd' }, end: null },
  2507. },
  2508. {
  2509. id: 'electric-breakeraE7ngUn8TD',
  2510. x: -478,
  2511. y: 374,
  2512. client: { x: -478, y: 391 },
  2513. scale_x: 1,
  2514. scale_y: 1,
  2515. rotate: 0,
  2516. actual_bound: { x: 28.222497940063477, y: 0.8181726336479187, width: 44.1177978515625, height: 98.3599624633789 },
  2517. point_coordinate: {
  2518. tl: { x: -500.05889892578125, y: 341.82001876831055 },
  2519. tc: { x: -478, y: 341.82001876831055 },
  2520. tr: { x: -455.94110107421875, y: 341.82001876831055 },
  2521. l: { x: -500.05889892578125, y: 391 },
  2522. r: { x: -455.94110107421875, y: 391 },
  2523. bl: { x: -500.05889892578125, y: 440.17998123168945 },
  2524. bc: { x: -478, y: 440.17998123168945 },
  2525. br: { x: -455.94110107421875, y: 440.17998123168945 },
  2526. },
  2527. name: 'electric-breaker',
  2528. title: '电源断路器-copy',
  2529. tag: 'electric-breaker',
  2530. type: 'CustomSvg',
  2531. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2532. display: true,
  2533. props: {
  2534. stroke: { title: '边框色', type: 'Color', val: '#00ff00' },
  2535. fill: { title: '填充色', type: 'Color', val: '#00ff00' },
  2536. isOpen: { title: '开关', type: 'Switch', val: false },
  2537. },
  2538. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2539. },
  2540. {
  2541. id: 'connection_lineibxBHM0S9F',
  2542. x: -364,
  2543. y: 339,
  2544. client: { x: -367, y: 363 },
  2545. scale_x: 1,
  2546. scale_y: 1,
  2547. rotate: 0,
  2548. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  2549. point_coordinate: {
  2550. tl: { x: -367.5, y: 340.5 },
  2551. tc: { x: -367, y: 340.5 },
  2552. tr: { x: -366.5, y: 340.5 },
  2553. l: { x: -367.5, y: 363 },
  2554. r: { x: -366.5, y: 363 },
  2555. bl: { x: -367.5, y: 385.5 },
  2556. bc: { x: -367, y: 385.5 },
  2557. br: { x: -366.5, y: 385.5 },
  2558. },
  2559. name: 'connection_line',
  2560. title: 'changeLine',
  2561. type: 'ConnectionLine',
  2562. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  2563. display: true,
  2564. props: {
  2565. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  2566. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  2567. point_position: {
  2568. title: '点坐标',
  2569. type: 'JsonEdit',
  2570. val: [
  2571. { x: 50, y: 36 },
  2572. { x: 51, y: 2 },
  2573. ],
  2574. },
  2575. },
  2576. animations: {
  2577. type: {
  2578. title: '动画类型',
  2579. type: 'Select',
  2580. val: 'None',
  2581. options: [
  2582. { label: '无', value: 'None' },
  2583. { label: '电流', value: 'Electricity' },
  2584. { label: '轨迹', value: 'Track' },
  2585. { label: '水珠', value: 'WaterDrop' },
  2586. ],
  2587. },
  2588. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  2589. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  2590. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  2591. reverse: { title: '反转动画', type: 'Switch', val: false },
  2592. },
  2593. bind_anchors: { start: { type: 'TopCenter', target_id: 'custom-svg-text662jqUKDwd' }, end: null },
  2594. },
  2595. {
  2596. id: 'connection_lineJUvw4pt6ft',
  2597. x: -277,
  2598. y: 339,
  2599. client: { x: -277, y: 360 },
  2600. scale_x: 1,
  2601. scale_y: 1,
  2602. rotate: 0,
  2603. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  2604. point_coordinate: {
  2605. tl: { x: -277.5, y: 337.5 },
  2606. tc: { x: -277, y: 337.5 },
  2607. tr: { x: -276.5, y: 337.5 },
  2608. l: { x: -277.5, y: 360 },
  2609. r: { x: -276.5, y: 360 },
  2610. bl: { x: -277.5, y: 382.5 },
  2611. bc: { x: -277, y: 382.5 },
  2612. br: { x: -276.5, y: 382.5 },
  2613. },
  2614. name: 'connection_line',
  2615. title: 'changeLine',
  2616. type: 'ConnectionLine',
  2617. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  2618. display: true,
  2619. props: {
  2620. stroke: { title: '线条颜色', type: 'Color', val: '#FFFF00' },
  2621. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  2622. point_position: {
  2623. title: '点坐标',
  2624. type: 'JsonEdit',
  2625. val: [
  2626. { x: 50, y: 37 },
  2627. { x: 51, y: 2 },
  2628. ],
  2629. },
  2630. },
  2631. animations: {
  2632. type: {
  2633. title: '动画类型',
  2634. type: 'Select',
  2635. val: 'None',
  2636. options: [
  2637. { label: '无', value: 'None' },
  2638. { label: '电流', value: 'Electricity' },
  2639. { label: '轨迹', value: 'Track' },
  2640. { label: '水珠', value: 'WaterDrop' },
  2641. ],
  2642. },
  2643. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  2644. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  2645. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  2646. reverse: { title: '反转动画', type: 'Switch', val: false },
  2647. },
  2648. bind_anchors: { start: { type: 'TopCenter', target_id: 'custom-svg-text662jqUKDwd' }, end: null },
  2649. },
  2650. {
  2651. id: 'electric-breakerO6pjkUkcp7',
  2652. x: -386,
  2653. y: 376,
  2654. client: { x: -386, y: 392 },
  2655. scale_x: 1,
  2656. scale_y: 1,
  2657. rotate: 0,
  2658. actual_bound: { x: 28.222497940063477, y: 0.8181726336479187, width: 44.1177978515625, height: 98.3599624633789 },
  2659. point_coordinate: {
  2660. tl: { x: -408.05889892578125, y: 342.82001876831055 },
  2661. tc: { x: -386, y: 342.82001876831055 },
  2662. tr: { x: -363.94110107421875, y: 342.82001876831055 },
  2663. l: { x: -408.05889892578125, y: 392 },
  2664. r: { x: -363.94110107421875, y: 392 },
  2665. bl: { x: -408.05889892578125, y: 441.17998123168945 },
  2666. bc: { x: -386, y: 441.17998123168945 },
  2667. br: { x: -363.94110107421875, y: 441.17998123168945 },
  2668. },
  2669. name: 'electric-breaker',
  2670. title: '电源断路器-copy-copy',
  2671. tag: 'electric-breaker',
  2672. type: 'CustomSvg',
  2673. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2674. display: true,
  2675. props: {
  2676. stroke: { title: '边框色', type: 'Color', val: '#00ff00' },
  2677. fill: { title: '填充色', type: 'Color', val: '#00ff00' },
  2678. isOpen: { title: '开关', type: 'Switch', val: false },
  2679. },
  2680. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2681. },
  2682. {
  2683. id: 'electric-breakerzbNanrnQvI',
  2684. x: -301,
  2685. y: 375,
  2686. client: { x: -301, y: 375 },
  2687. scale_x: 1,
  2688. scale_y: 1,
  2689. rotate: 0,
  2690. actual_bound: { x: 28.222497940063477, y: 0.8181726336479187, width: 44.1177978515625, height: 98.3599624633789 },
  2691. point_coordinate: {
  2692. tl: { x: -323.05889892578125, y: 325.82001876831055 },
  2693. tc: { x: -301, y: 325.82001876831055 },
  2694. tr: { x: -278.94110107421875, y: 325.82001876831055 },
  2695. l: { x: -323.05889892578125, y: 375 },
  2696. r: { x: -278.94110107421875, y: 375 },
  2697. bl: { x: -323.05889892578125, y: 424.17998123168945 },
  2698. bc: { x: -301, y: 424.17998123168945 },
  2699. br: { x: -278.94110107421875, y: 424.17998123168945 },
  2700. },
  2701. name: 'electric-breaker',
  2702. title: '电源断路器-copy-copy-copy',
  2703. tag: 'electric-breaker',
  2704. type: 'CustomSvg',
  2705. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2706. display: true,
  2707. props: {
  2708. stroke: { title: '边框色', type: 'Color', val: '#00ff00' },
  2709. fill: { title: '填充色', type: 'Color', val: '#00ff00' },
  2710. isOpen: { title: '开关', type: 'Switch', val: false },
  2711. },
  2712. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2713. },
  2714. {
  2715. id: 'arrow-line5bLLa1fo6m',
  2716. x: -547,
  2717. y: 471,
  2718. client: { x: -547, y: 488 },
  2719. scale_x: 1,
  2720. scale_y: 1,
  2721. rotate: 0,
  2722. actual_bound: { x: 40.88562774658203, y: -0.0006357083912007511, width: 18.227031707763672, height: 95.88262176513672 },
  2723. point_coordinate: {
  2724. tl: { x: -556.1135158538818, y: 440.05868911743164 },
  2725. tc: { x: -547, y: 440.05868911743164 },
  2726. tr: { x: -537.8864841461182, y: 440.05868911743164 },
  2727. l: { x: -556.1135158538818, y: 488 },
  2728. r: { x: -537.8864841461182, y: 488 },
  2729. bl: { x: -556.1135158538818, y: 535.9413108825684 },
  2730. bc: { x: -547, y: 535.9413108825684 },
  2731. br: { x: -537.8864841461182, y: 535.9413108825684 },
  2732. },
  2733. name: 'arrow-line',
  2734. title: '箭头1',
  2735. type: 'File',
  2736. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2737. display: true,
  2738. state: {
  2739. OnOff: {
  2740. title: '开关',
  2741. default: false,
  2742. props: { stroke: { openVal: '#00ff00', closeVal: '#ffff00' }, fill: { openVal: '#00ff00', closeVal: '#ff000000' } },
  2743. },
  2744. },
  2745. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2746. },
  2747. {
  2748. id: 'arrow-lineqPB3ix7BkL',
  2749. x: -457,
  2750. y: 472,
  2751. client: { x: -457, y: 472 },
  2752. scale_x: 1,
  2753. scale_y: 1,
  2754. rotate: 0,
  2755. actual_bound: { x: 40.88562774658203, y: -0.0006357083912007511, width: 18.227031707763672, height: 95.88262176513672 },
  2756. point_coordinate: {
  2757. tl: { x: -466.11351585388184, y: 424.05868911743164 },
  2758. tc: { x: -457, y: 424.05868911743164 },
  2759. tr: { x: -447.88648414611816, y: 424.05868911743164 },
  2760. l: { x: -466.11351585388184, y: 472 },
  2761. r: { x: -447.88648414611816, y: 472 },
  2762. bl: { x: -466.11351585388184, y: 519.9413108825684 },
  2763. bc: { x: -457, y: 519.9413108825684 },
  2764. br: { x: -447.88648414611816, y: 519.9413108825684 },
  2765. },
  2766. name: 'arrow-line',
  2767. title: '箭头1-copy',
  2768. type: 'File',
  2769. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2770. display: true,
  2771. state: {
  2772. OnOff: {
  2773. title: '开关',
  2774. default: false,
  2775. props: { stroke: { openVal: '#00ff00', closeVal: '#ffff00' }, fill: { openVal: '#00ff00', closeVal: '#ff000000' } },
  2776. },
  2777. },
  2778. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2779. },
  2780. {
  2781. id: 'arrow-lineBoydWOHHmr',
  2782. x: -366,
  2783. y: 471,
  2784. client: { x: -366, y: 471 },
  2785. scale_x: 1,
  2786. scale_y: 1,
  2787. rotate: 0,
  2788. actual_bound: { x: 40.88562774658203, y: -0.0006357083912007511, width: 18.227031707763672, height: 95.88262176513672 },
  2789. point_coordinate: {
  2790. tl: { x: -375.11351585388184, y: 423.05868911743164 },
  2791. tc: { x: -366, y: 423.05868911743164 },
  2792. tr: { x: -356.88648414611816, y: 423.05868911743164 },
  2793. l: { x: -375.11351585388184, y: 471 },
  2794. r: { x: -356.88648414611816, y: 471 },
  2795. bl: { x: -375.11351585388184, y: 518.9413108825684 },
  2796. bc: { x: -366, y: 518.9413108825684 },
  2797. br: { x: -356.88648414611816, y: 518.9413108825684 },
  2798. },
  2799. name: 'arrow-line',
  2800. title: '箭头1-copy-copy',
  2801. type: 'File',
  2802. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2803. display: true,
  2804. state: {
  2805. OnOff: {
  2806. title: '开关',
  2807. default: false,
  2808. props: { stroke: { openVal: '#00ff00', closeVal: '#ffff00' }, fill: { openVal: '#00ff00', closeVal: '#ff000000' } },
  2809. },
  2810. },
  2811. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2812. },
  2813. {
  2814. id: 'arrow-line5waKsA7PHF',
  2815. x: -280,
  2816. y: 473,
  2817. client: { x: -282, y: 473 },
  2818. scale_x: 1,
  2819. scale_y: 1,
  2820. rotate: 0,
  2821. actual_bound: { x: 40.88562774658203, y: -0.0006357083912007511, width: 18.227031707763672, height: 95.88262176513672 },
  2822. point_coordinate: {
  2823. tl: { x: -291.11351585388184, y: 425.05868911743164 },
  2824. tc: { x: -282, y: 425.05868911743164 },
  2825. tr: { x: -272.88648414611816, y: 425.05868911743164 },
  2826. l: { x: -291.11351585388184, y: 473 },
  2827. r: { x: -272.88648414611816, y: 473 },
  2828. bl: { x: -291.11351585388184, y: 520.9413108825684 },
  2829. bc: { x: -282, y: 520.9413108825684 },
  2830. br: { x: -272.88648414611816, y: 520.9413108825684 },
  2831. },
  2832. name: 'arrow-line',
  2833. title: '箭头1-copy-copy-copy',
  2834. type: 'File',
  2835. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2836. display: true,
  2837. state: {
  2838. OnOff: {
  2839. title: '开关',
  2840. default: false,
  2841. props: { stroke: { openVal: '#00ff00', closeVal: '#ffff00' }, fill: { openVal: '#00ff00', closeVal: '#ff000000' } },
  2842. },
  2843. },
  2844. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2845. },
  2846. {
  2847. id: 'custom-svg-text9mE6DlRsxq',
  2848. x: -662,
  2849. y: -63,
  2850. client: { x: -662, y: -63 },
  2851. scale_x: 1,
  2852. scale_y: 1,
  2853. rotate: 0,
  2854. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  2855. point_coordinate: {
  2856. tl: { x: -700, y: -73 },
  2857. tc: { x: -662, y: -73 },
  2858. tr: { x: -624, y: -73 },
  2859. l: { x: -700, y: -63 },
  2860. r: { x: -624, y: -63 },
  2861. bl: { x: -700, y: -53 },
  2862. bc: { x: -662, y: -53 },
  2863. br: { x: -624, y: -53 },
  2864. },
  2865. name: 'custom-svg-text',
  2866. title: '文字-copy',
  2867. tag: 'custom-svg-text',
  2868. type: 'CustomSvg',
  2869. display: true,
  2870. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2871. props: {
  2872. text: { title: '文字内容', type: 'Input', val: '备风机移变' },
  2873. fontFamily: {
  2874. title: '字体',
  2875. type: 'Select',
  2876. val: 'Microsoft YaHei',
  2877. options: [
  2878. { value: 'Microsoft YaHei', label: '微软雅黑' },
  2879. { value: 'NSimSun', label: '新宋体' },
  2880. ],
  2881. },
  2882. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  2883. fill: { title: '文字颜色', type: 'Color', val: '#FFFFFF' },
  2884. },
  2885. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2886. },
  2887. {
  2888. id: 'custom-svg-textffQAK2KK7l',
  2889. x: -512,
  2890. y: 313,
  2891. client: { x: -512, y: 313 },
  2892. scale_x: 1,
  2893. scale_y: 1,
  2894. rotate: 0,
  2895. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  2896. point_coordinate: {
  2897. tl: { x: -524.4000005722046, y: 297 },
  2898. tc: { x: -512, y: 297 },
  2899. tr: { x: -499.5999994277954, y: 297 },
  2900. l: { x: -524.4000005722046, y: 313 },
  2901. r: { x: -499.5999994277954, y: 313 },
  2902. bl: { x: -524.4000005722046, y: 329 },
  2903. bc: { x: -512, y: 329 },
  2904. br: { x: -499.5999994277954, y: 329 },
  2905. },
  2906. name: 'custom-svg-text',
  2907. title: '文字',
  2908. tag: 'custom-svg-text',
  2909. type: 'CustomSvg',
  2910. display: true,
  2911. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2912. props: {
  2913. text: { title: '文字内容', type: 'Input', val: '备' },
  2914. fontFamily: {
  2915. title: '字体',
  2916. type: 'Select',
  2917. val: 'Microsoft YaHei',
  2918. options: [
  2919. { value: 'Microsoft YaHei', label: '微软雅黑' },
  2920. { value: 'NSimSun', label: '新宋体' },
  2921. ],
  2922. },
  2923. fontSize: { title: '文字大小', type: 'InputNumber', val: 24 },
  2924. fill: { title: '文字颜色', type: 'Color', val: '#00DDFF' },
  2925. },
  2926. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2927. },
  2928. {
  2929. id: 'custom-svg-textErE3B1l7S1',
  2930. x: -334,
  2931. y: 312,
  2932. client: { x: -334, y: 312 },
  2933. scale_x: 1,
  2934. scale_y: 1,
  2935. rotate: 0,
  2936. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  2937. point_coordinate: {
  2938. tl: { x: -346.4000005722046, y: 296 },
  2939. tc: { x: -334, y: 296 },
  2940. tr: { x: -321.5999994277954, y: 296 },
  2941. l: { x: -346.4000005722046, y: 312 },
  2942. r: { x: -321.5999994277954, y: 312 },
  2943. bl: { x: -346.4000005722046, y: 328 },
  2944. bc: { x: -334, y: 328 },
  2945. br: { x: -321.5999994277954, y: 328 },
  2946. },
  2947. name: 'custom-svg-text',
  2948. title: '文字-copy',
  2949. tag: 'custom-svg-text',
  2950. type: 'CustomSvg',
  2951. display: true,
  2952. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2953. props: {
  2954. text: { title: '文字内容', type: 'Input', val: '主' },
  2955. fontFamily: {
  2956. title: '字体',
  2957. type: 'Select',
  2958. val: 'Microsoft YaHei',
  2959. options: [
  2960. { value: 'Microsoft YaHei', label: '微软雅黑' },
  2961. { value: 'NSimSun', label: '新宋体' },
  2962. ],
  2963. },
  2964. fontSize: { title: '文字大小', type: 'InputNumber', val: 24 },
  2965. fill: { title: '文字颜色', type: 'Color', val: '#00DDFF' },
  2966. },
  2967. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  2968. },
  2969. {
  2970. id: 'custom-svg-textIjsFbs6fID',
  2971. x: -675,
  2972. y: -172,
  2973. client: { x: -675, y: -172 },
  2974. scale_x: 1,
  2975. scale_y: 1,
  2976. rotate: 0,
  2977. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  2978. point_coordinate: {
  2979. tl: { x: -782.466552734375, y: -182 },
  2980. tc: { x: -675, y: -182 },
  2981. tr: { x: -567.533447265625, y: -182 },
  2982. l: { x: -782.466552734375, y: -172 },
  2983. r: { x: -567.533447265625, y: -172 },
  2984. bl: { x: -782.466552734375, y: -162 },
  2985. bc: { x: -675, y: -162 },
  2986. br: { x: -567.533447265625, y: -162 },
  2987. },
  2988. name: 'custom-svg-text',
  2989. title: '文字',
  2990. tag: 'custom-svg-text',
  2991. type: 'CustomSvg',
  2992. display: true,
  2993. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  2994. props: {
  2995. text: { title: '文字内容', type: 'Input', val: '来在12煤三盘区变电所G1211柜' },
  2996. fontFamily: {
  2997. title: '字体',
  2998. type: 'Select',
  2999. val: 'Microsoft YaHei',
  3000. options: [
  3001. { value: 'Microsoft YaHei', label: '微软雅黑' },
  3002. { value: 'NSimSun', label: '新宋体' },
  3003. ],
  3004. },
  3005. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  3006. fill: { title: '文字颜色', type: 'Color', val: '#FFFFFF' },
  3007. },
  3008. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  3009. },
  3010. {
  3011. id: 'custom-svg-textWilG5jRH7w',
  3012. x: -353,
  3013. y: -172,
  3014. client: { x: -353, y: -172 },
  3015. scale_x: 1,
  3016. scale_y: 1,
  3017. rotate: 0,
  3018. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  3019. point_coordinate: {
  3020. tl: { x: -460.466552734375, y: -182 },
  3021. tc: { x: -353, y: -182 },
  3022. tr: { x: -245.533447265625, y: -182 },
  3023. l: { x: -460.466552734375, y: -172 },
  3024. r: { x: -245.533447265625, y: -172 },
  3025. bl: { x: -460.466552734375, y: -162 },
  3026. bc: { x: -353, y: -162 },
  3027. br: { x: -245.533447265625, y: -162 },
  3028. },
  3029. name: 'custom-svg-text',
  3030. title: '文字-copy',
  3031. tag: 'custom-svg-text',
  3032. type: 'CustomSvg',
  3033. display: true,
  3034. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  3035. props: {
  3036. text: { title: '文字内容', type: 'Input', val: '来在12煤三盘区变电所G1107柜' },
  3037. fontFamily: {
  3038. title: '字体',
  3039. type: 'Select',
  3040. val: 'Microsoft YaHei',
  3041. options: [
  3042. { value: 'Microsoft YaHei', label: '微软雅黑' },
  3043. { value: 'NSimSun', label: '新宋体' },
  3044. ],
  3045. },
  3046. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  3047. fill: { title: '文字颜色', type: 'Color', val: '#FFFFFF' },
  3048. },
  3049. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  3050. },
  3051. {
  3052. id: 'custom-svg-textcxjU8wN810',
  3053. x: -137,
  3054. y: 553,
  3055. client: { x: -137, y: 553 },
  3056. scale_x: 1,
  3057. scale_y: 1,
  3058. rotate: 0,
  3059. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  3060. point_coordinate: {
  3061. tl: { x: -152.5, y: 543 },
  3062. tc: { x: -137, y: 543 },
  3063. tr: { x: -121.5, y: 543 },
  3064. l: { x: -152.5, y: 553 },
  3065. r: { x: -121.5, y: 553 },
  3066. bl: { x: -152.5, y: 563 },
  3067. bc: { x: -137, y: 563 },
  3068. br: { x: -121.5, y: 563 },
  3069. },
  3070. name: 'custom-svg-text',
  3071. title: '文字',
  3072. tag: 'custom-svg-text',
  3073. type: 'CustomSvg',
  3074. display: true,
  3075. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  3076. props: {
  3077. text: { title: '文字内容', type: 'Input', val: '主风机馈电' },
  3078. fontFamily: {
  3079. title: '字体',
  3080. type: 'Select',
  3081. val: 'Microsoft YaHei',
  3082. options: [
  3083. { value: 'Microsoft YaHei', label: '微软雅黑' },
  3084. { value: 'NSimSun', label: '新宋体' },
  3085. ],
  3086. },
  3087. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  3088. fill: { title: '文字颜色', type: 'Color', val: '#FFFFFF' },
  3089. },
  3090. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  3091. },
  3092. {
  3093. id: 'custom-svg-textHXkhPmUMWE',
  3094. x: -742,
  3095. y: 551,
  3096. client: { x: -742, y: 551 },
  3097. scale_x: 1,
  3098. scale_y: 1,
  3099. rotate: 0,
  3100. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  3101. point_coordinate: {
  3102. tl: { x: -779.6000022888184, y: 541 },
  3103. tc: { x: -742, y: 541 },
  3104. tr: { x: -704.3999977111816, y: 541 },
  3105. l: { x: -779.6000022888184, y: 551 },
  3106. r: { x: -704.3999977111816, y: 551 },
  3107. bl: { x: -779.6000022888184, y: 561 },
  3108. bc: { x: -742, y: 561 },
  3109. br: { x: -704.3999977111816, y: 561 },
  3110. },
  3111. name: 'custom-svg-text',
  3112. title: '文字-copy',
  3113. tag: 'custom-svg-text',
  3114. type: 'CustomSvg',
  3115. display: true,
  3116. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  3117. props: {
  3118. text: { title: '文字内容', type: 'Input', val: '备风机馈电' },
  3119. fontFamily: {
  3120. title: '字体',
  3121. type: 'Select',
  3122. val: 'Microsoft YaHei',
  3123. options: [
  3124. { value: 'Microsoft YaHei', label: '微软雅黑' },
  3125. { value: 'NSimSun', label: '新宋体' },
  3126. ],
  3127. },
  3128. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  3129. fill: { title: '文字颜色', type: 'Color', val: '#FFFFFF' },
  3130. },
  3131. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  3132. },
  3133. {
  3134. id: 'custom-svg-textH6apeUpS25',
  3135. x: -280,
  3136. y: -100,
  3137. client: { x: -280, y: -100 },
  3138. scale_x: 1,
  3139. scale_y: 1,
  3140. rotate: 0,
  3141. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  3142. point_coordinate: {
  3143. tl: { x: -325.5, y: -110 },
  3144. tc: { x: -280, y: -110 },
  3145. tr: { x: -234.5, y: -110 },
  3146. l: { x: -325.5, y: -100 },
  3147. r: { x: -234.5, y: -100 },
  3148. bl: { x: -325.5, y: -90 },
  3149. bc: { x: -280, y: -90 },
  3150. br: { x: -234.5, y: -90 },
  3151. },
  3152. name: 'custom-svg-text',
  3153. title: '文字',
  3154. tag: 'custom-svg-text',
  3155. type: 'CustomSvg',
  3156. display: true,
  3157. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  3158. props: {
  3159. text: { title: '文字内容', type: 'Input', val: '高压运行状态' },
  3160. fontFamily: {
  3161. title: '字体',
  3162. type: 'Select',
  3163. val: 'Microsoft YaHei',
  3164. options: [
  3165. { value: 'Microsoft YaHei', label: '微软雅黑' },
  3166. { value: 'NSimSun', label: '新宋体' },
  3167. ],
  3168. },
  3169. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  3170. fill: { title: '文字颜色', type: 'Color', val: '#FFA600' },
  3171. },
  3172. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  3173. },
  3174. {
  3175. id: 'custom-svg-textdlSMN5CrsK',
  3176. x: -281,
  3177. y: 127,
  3178. client: { x: -281, y: 127 },
  3179. scale_x: 1,
  3180. scale_y: 1,
  3181. rotate: 0,
  3182. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  3183. point_coordinate: {
  3184. tl: { x: -326.5, y: 117 },
  3185. tc: { x: -281, y: 117 },
  3186. tr: { x: -235.5, y: 117 },
  3187. l: { x: -326.5, y: 127 },
  3188. r: { x: -235.5, y: 127 },
  3189. bl: { x: -326.5, y: 137 },
  3190. bc: { x: -281, y: 137 },
  3191. br: { x: -235.5, y: 137 },
  3192. },
  3193. name: 'custom-svg-text',
  3194. title: '文字-copy',
  3195. tag: 'custom-svg-text',
  3196. type: 'CustomSvg',
  3197. display: true,
  3198. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  3199. props: {
  3200. text: { title: '文字内容', type: 'Input', val: '低压运行状态' },
  3201. fontFamily: {
  3202. title: '字体',
  3203. type: 'Select',
  3204. val: 'Microsoft YaHei',
  3205. options: [
  3206. { value: 'Microsoft YaHei', label: '微软雅黑' },
  3207. { value: 'NSimSun', label: '新宋体' },
  3208. ],
  3209. },
  3210. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  3211. fill: { title: '文字颜色', type: 'Color', val: '#FFA600' },
  3212. },
  3213. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  3214. },
  3215. {
  3216. id: 'custom-svg-text8hfqYu7qCf',
  3217. x: -838,
  3218. y: 127,
  3219. client: { x: -838, y: 127 },
  3220. scale_x: 1,
  3221. scale_y: 1,
  3222. rotate: 0,
  3223. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  3224. point_coordinate: {
  3225. tl: { x: -883.5, y: 117 },
  3226. tc: { x: -838, y: 117 },
  3227. tr: { x: -792.5, y: 117 },
  3228. l: { x: -883.5, y: 127 },
  3229. r: { x: -792.5, y: 127 },
  3230. bl: { x: -883.5, y: 137 },
  3231. bc: { x: -838, y: 137 },
  3232. br: { x: -792.5, y: 137 },
  3233. },
  3234. name: 'custom-svg-text',
  3235. title: '文字-copy-copy',
  3236. tag: 'custom-svg-text',
  3237. type: 'CustomSvg',
  3238. display: true,
  3239. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  3240. props: {
  3241. text: { title: '文字内容', type: 'Input', val: '低压运行状态' },
  3242. fontFamily: {
  3243. title: '字体',
  3244. type: 'Select',
  3245. val: 'Microsoft YaHei',
  3246. options: [
  3247. { value: 'Microsoft YaHei', label: '微软雅黑' },
  3248. { value: 'NSimSun', label: '新宋体' },
  3249. ],
  3250. },
  3251. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  3252. fill: { title: '文字颜色', type: 'Color', val: '#FFA600' },
  3253. },
  3254. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  3255. },
  3256. {
  3257. id: 'custom-svg-textYN6br3c8mY',
  3258. x: -835,
  3259. y: -100,
  3260. client: { x: -835, y: -105 },
  3261. scale_x: 1,
  3262. scale_y: 1,
  3263. rotate: 0,
  3264. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  3265. point_coordinate: {
  3266. tl: { x: -880.5, y: -115 },
  3267. tc: { x: -835, y: -115 },
  3268. tr: { x: -789.5, y: -115 },
  3269. l: { x: -880.5, y: -105 },
  3270. r: { x: -789.5, y: -105 },
  3271. bl: { x: -880.5, y: -95 },
  3272. bc: { x: -835, y: -95 },
  3273. br: { x: -789.5, y: -95 },
  3274. },
  3275. name: 'custom-svg-text',
  3276. title: '文字-copy-copy-copy',
  3277. tag: 'custom-svg-text',
  3278. type: 'CustomSvg',
  3279. display: true,
  3280. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  3281. props: {
  3282. text: { title: '文字内容', type: 'Input', val: '高压运行状态' },
  3283. fontFamily: {
  3284. title: '字体',
  3285. type: 'Select',
  3286. val: 'Microsoft YaHei',
  3287. options: [
  3288. { value: 'Microsoft YaHei', label: '微软雅黑' },
  3289. { value: 'NSimSun', label: '新宋体' },
  3290. ],
  3291. },
  3292. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  3293. fill: { title: '文字颜色', type: 'Color', val: '#FFA600' },
  3294. },
  3295. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  3296. },
  3297. {
  3298. id: 'custom-svg-text9OtB4BD8tx',
  3299. x: -811,
  3300. y: -75,
  3301. client: { x: -811, y: -78 },
  3302. scale_x: 1,
  3303. scale_y: 1,
  3304. rotate: 0,
  3305. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  3306. point_coordinate: {
  3307. tl: { x: -826.1000003814697, y: -88 },
  3308. tc: { x: -811, y: -88 },
  3309. tr: { x: -795.8999996185303, y: -88 },
  3310. l: { x: -826.1000003814697, y: -78 },
  3311. r: { x: -795.8999996185303, y: -78 },
  3312. bl: { x: -826.1000003814697, y: -68 },
  3313. bc: { x: -811, y: -68 },
  3314. br: { x: -795.8999996185303, y: -68 },
  3315. },
  3316. name: 'custom-svg-text',
  3317. title: 'b-state',
  3318. tag: 'custom-svg-text',
  3319. type: 'CustomSvg',
  3320. display: true,
  3321. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  3322. props: {
  3323. text: { title: '文字内容', type: 'Input', val: '正常' },
  3324. fontFamily: {
  3325. title: '字体',
  3326. type: 'Select',
  3327. val: 'Microsoft YaHei',
  3328. options: [
  3329. { value: 'Microsoft YaHei', label: '微软雅黑' },
  3330. { value: 'NSimSun', label: '新宋体' },
  3331. ],
  3332. },
  3333. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  3334. fill: { title: '文字颜色', type: 'Color', val: '#00FF00' },
  3335. },
  3336. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  3337. },
  3338. {
  3339. id: 'custom-svg-textifb0BW0nZX',
  3340. x: -252,
  3341. y: -74,
  3342. client: { x: -252, y: -74 },
  3343. scale_x: 1,
  3344. scale_y: 1,
  3345. rotate: 0,
  3346. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  3347. point_coordinate: {
  3348. tl: { x: -267.1000003814697, y: -84 },
  3349. tc: { x: -252, y: -84 },
  3350. tr: { x: -236.89999961853027, y: -84 },
  3351. l: { x: -267.1000003814697, y: -74 },
  3352. r: { x: -236.89999961853027, y: -74 },
  3353. bl: { x: -267.1000003814697, y: -64 },
  3354. bc: { x: -252, y: -64 },
  3355. br: { x: -236.89999961853027, y: -64 },
  3356. },
  3357. name: 'custom-svg-text',
  3358. title: 'z-state',
  3359. tag: 'custom-svg-text',
  3360. type: 'CustomSvg',
  3361. display: true,
  3362. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  3363. props: {
  3364. text: { title: '文字内容', type: 'Input', val: '正常' },
  3365. fontFamily: {
  3366. title: '字体',
  3367. type: 'Select',
  3368. val: 'Microsoft YaHei',
  3369. options: [
  3370. { value: 'Microsoft YaHei', label: '微软雅黑' },
  3371. { value: 'NSimSun', label: '新宋体' },
  3372. ],
  3373. },
  3374. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  3375. fill: { title: '文字颜色', type: 'Color', val: '#00FF00' },
  3376. },
  3377. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  3378. },
  3379. {
  3380. id: 'straight-lineFGURWExYla',
  3381. x: -811,
  3382. y: -88,
  3383. client: { x: 347, y: 258 },
  3384. scale_x: 1,
  3385. scale_y: 1,
  3386. rotate: 0,
  3387. actual_bound: { x: 50, y: 50, width: 0, height: 0 },
  3388. point_coordinate: {
  3389. tl: { x: -811, y: -88 },
  3390. tc: { x: -811, y: -88 },
  3391. tr: { x: -811, y: -88 },
  3392. l: { x: -811, y: -88 },
  3393. r: { x: -811, y: -88 },
  3394. bl: { x: -811, y: -88 },
  3395. bc: { x: -811, y: -88 },
  3396. br: { x: -811, y: -88 },
  3397. },
  3398. name: 'connection_line',
  3399. title: '连接线',
  3400. type: 'ConnectionLine',
  3401. config: { can_zoom: false, have_anchor: false, actual_rect: false },
  3402. display: true,
  3403. props: {
  3404. stroke: { title: '线条颜色', type: 'Color', val: '#ff0000' },
  3405. 'stroke-width': { title: '线条宽度', type: 'InputNumber', val: 2 },
  3406. point_position: { title: '点坐标', type: 'JsonEdit', val: [{ x: 50, y: 50 }] },
  3407. },
  3408. animations: {
  3409. type: {
  3410. title: '动画类型',
  3411. type: 'Select',
  3412. val: 'None',
  3413. options: [
  3414. { label: '无', value: 'None' },
  3415. { label: '电流', value: 'Electricity' },
  3416. { label: '轨迹', value: 'Track' },
  3417. { label: '水珠', value: 'WaterDrop' },
  3418. ],
  3419. },
  3420. dur: { title: '持续时间', type: 'InputNumber', val: 20 },
  3421. repeatCount: { title: '循环次数', type: 'Input', val: 'indefinite', disabled: true },
  3422. color: { title: '颜色', type: 'Color', val: '#0a7ae2' },
  3423. reverse: { title: '反转动画', type: 'Switch', val: false },
  3424. },
  3425. bind_anchors: { start: { type: 'TopCenter', target_id: 'custom-svg-text9OtB4BD8tx' }, end: null },
  3426. },
  3427. {
  3428. id: 'custom-svg-textlqc2YZTzyI',
  3429. x: -815,
  3430. y: 153,
  3431. client: { x: -815, y: 153 },
  3432. scale_x: 1,
  3433. scale_y: 1,
  3434. rotate: 0,
  3435. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  3436. point_coordinate: {
  3437. tl: { x: -830.1000003814697, y: 143 },
  3438. tc: { x: -815, y: 143 },
  3439. tr: { x: -799.8999996185303, y: 143 },
  3440. l: { x: -830.1000003814697, y: 153 },
  3441. r: { x: -799.8999996185303, y: 153 },
  3442. bl: { x: -830.1000003814697, y: 163 },
  3443. bc: { x: -815, y: 163 },
  3444. br: { x: -799.8999996185303, y: 163 },
  3445. },
  3446. name: 'custom-svg-text',
  3447. title: 'b-state1',
  3448. tag: 'custom-svg-text',
  3449. type: 'CustomSvg',
  3450. display: true,
  3451. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  3452. props: {
  3453. text: { title: '文字内容', type: 'Input', val: '正常' },
  3454. fontFamily: {
  3455. title: '字体',
  3456. type: 'Select',
  3457. val: 'Microsoft YaHei',
  3458. options: [
  3459. { value: 'Microsoft YaHei', label: '微软雅黑' },
  3460. { value: 'NSimSun', label: '新宋体' },
  3461. ],
  3462. },
  3463. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  3464. fill: { title: '文字颜色', type: 'Color', val: '#00FF00' },
  3465. },
  3466. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  3467. },
  3468. {
  3469. id: 'custom-svg-textwo1kl0CsXG',
  3470. x: -249,
  3471. y: 151,
  3472. client: { x: -249, y: 151 },
  3473. scale_x: 1,
  3474. scale_y: 1,
  3475. rotate: 0,
  3476. actual_bound: { x: 49.20000076293945, y: 39, width: 31, height: 20 },
  3477. point_coordinate: {
  3478. tl: { x: -264.1000003814697, y: 141 },
  3479. tc: { x: -249, y: 141 },
  3480. tr: { x: -233.89999961853027, y: 141 },
  3481. l: { x: -264.1000003814697, y: 151 },
  3482. r: { x: -233.89999961853027, y: 151 },
  3483. bl: { x: -264.1000003814697, y: 161 },
  3484. bc: { x: -249, y: 161 },
  3485. br: { x: -233.89999961853027, y: 161 },
  3486. },
  3487. name: 'custom-svg-text',
  3488. title: 'z-state1',
  3489. tag: 'custom-svg-text',
  3490. type: 'CustomSvg',
  3491. display: true,
  3492. config: { can_zoom: true, have_anchor: true, actual_rect: true },
  3493. props: {
  3494. text: { title: '文字内容', type: 'Input', val: '正常' },
  3495. fontFamily: {
  3496. title: '字体',
  3497. type: 'Select',
  3498. val: 'Microsoft YaHei',
  3499. options: [
  3500. { value: 'Microsoft YaHei', label: '微软雅黑' },
  3501. { value: 'NSimSun', label: '新宋体' },
  3502. ],
  3503. },
  3504. fontSize: { title: '文字大小', type: 'InputNumber', val: 15 },
  3505. fill: { title: '文字颜色', type: 'Color', val: '#00FF00' },
  3506. },
  3507. common_animations: { val: '', delay: 'delay-0s', speed: 'slow', repeat: 'infinite' },
  3508. },
  3509. ],
  3510. });
  3511. export const option = reactive<EChartsOption>({
  3512. title: {
  3513. text: '局部通风机运行工况智能决策',
  3514. textStyle: {
  3515. color: '#BF954D',
  3516. },
  3517. left: 'center',
  3518. top: 0,
  3519. },
  3520. // backgroundColor: '#39deff',
  3521. tooltip: {
  3522. trigger: 'axis',
  3523. axisPointer: {
  3524. type: 'cross',
  3525. label: {
  3526. backgroundColor: '#6a7985',
  3527. },
  3528. },
  3529. },
  3530. toolbox: {
  3531. show: true,
  3532. },
  3533. grid: {
  3534. left: 8,
  3535. right: 50,
  3536. bottom: 0,
  3537. containLabel: true,
  3538. },
  3539. xAxis: {
  3540. type: 'category',
  3541. name: 'm³/min',
  3542. nameTextStyle: {
  3543. fontWeight: 600,
  3544. fontSize: 13,
  3545. },
  3546. splitLine: { show: true, lineStyle: { color: 'rgba(21,80,126,.5)' } },
  3547. axisLabel: {
  3548. margin: 10,
  3549. fontSize: 14,
  3550. color: '#f1f1f199',
  3551. },
  3552. boundaryGap: false,
  3553. data: [],
  3554. },
  3555. yAxis: {
  3556. type: 'value',
  3557. axisLine: {
  3558. show: true,
  3559. lineStyle: {
  3560. color: '#006c9d',
  3561. },
  3562. },
  3563. splitLine: { show: true, lineStyle: { color: 'rgba(21,80,126,.5)' } },
  3564. axisLabel: {
  3565. show: true,
  3566. fontSize: 14,
  3567. formatter: '{value}',
  3568. color: '#0071A5',
  3569. },
  3570. min: 360,
  3571. max: 9000,
  3572. name: 'Pa',
  3573. nameTextStyle: {
  3574. fontWeight: 600,
  3575. fontSize: 13,
  3576. },
  3577. },
  3578. series: [],
  3579. });
  3580. export const echatsOption = {
  3581. legend: {
  3582. top: 5,
  3583. },
  3584. grid: {
  3585. top: '35',
  3586. left: '30',
  3587. right: '35',
  3588. bottom: '10%',
  3589. containLabel: true,
  3590. },
  3591. toolbox: {
  3592. feature: {
  3593. saveAsImage: {
  3594. show: false,
  3595. },
  3596. },
  3597. },
  3598. xAxis: {
  3599. type: 'category',
  3600. axisLabel: {
  3601. margin: 10,
  3602. color: '#f1f1f199',
  3603. },
  3604. name: '',
  3605. },
  3606. yAxis: {
  3607. axisLabel: {
  3608. color: '#0071A5',
  3609. },
  3610. },
  3611. };
  3612. export const echatsOption1 = {
  3613. legend: {
  3614. top: 10,
  3615. },
  3616. grid: {
  3617. top: '18%',
  3618. left: '30',
  3619. right: '35',
  3620. bottom: '10%',
  3621. containLabel: true,
  3622. },
  3623. toolbox: {
  3624. feature: {
  3625. saveAsImage: {
  3626. show: false,
  3627. },
  3628. },
  3629. },
  3630. xAxis: {
  3631. type: 'category',
  3632. axisLabel: {
  3633. margin: 10,
  3634. color: '#f1f1f199',
  3635. },
  3636. name: '',
  3637. },
  3638. yAxis: {
  3639. axisLabel: {
  3640. color: '#0071A5',
  3641. },
  3642. },
  3643. };
  3644. export const chartsColumnList = [
  3645. {
  3646. legend: '瓦斯浓度',
  3647. seriesName: '(%)',
  3648. ymax: 0.8,
  3649. yname: '%',
  3650. linetype: 'line',
  3651. yaxispos: 'left',
  3652. color: '#00FFA8',
  3653. sort: 1,
  3654. xRotate: 0,
  3655. dataIndex: 'gas',
  3656. },
  3657. {
  3658. legend: '风量',
  3659. seriesName: '(m³/min)',
  3660. ymax: 1100,
  3661. yname: 'm³/min',
  3662. linetype: 'line',
  3663. yaxispos: 'right',
  3664. color: '#FDB146',
  3665. sort: 2,
  3666. xRotate: 0,
  3667. dataIndex: 'm3',
  3668. },
  3669. {
  3670. legend: '频率',
  3671. seriesName: '(Hz)',
  3672. ymax: 50,
  3673. yname: 'Hz',
  3674. linetype: 'line',
  3675. yaxispos: 'right',
  3676. color: '#AE19FF',
  3677. sort: 3,
  3678. xRotate: 0,
  3679. dataIndex: 'Hz',
  3680. },
  3681. ];
  3682. export const chartsColumnList1 = [
  3683. {
  3684. legend: '目标风量',
  3685. seriesName: '(m³/min)',
  3686. ymax: 1100,
  3687. yname: 'm³/min',
  3688. linetype: 'line',
  3689. yaxispos: 'left',
  3690. color: '#00FFA8',
  3691. sort: 1,
  3692. xRotate: 0,
  3693. dataIndex: 'targetVolume',
  3694. },
  3695. {
  3696. legend: '供风量',
  3697. seriesName: '(m³/min)',
  3698. ymax: 1100,
  3699. yname: 'm³/min',
  3700. linetype: 'line',
  3701. yaxispos: 'left',
  3702. color: '#FDB146',
  3703. sort: 1,
  3704. xRotate: 0,
  3705. dataIndex: 'inletAirVolume_merge',
  3706. },
  3707. ];
  3708. export const chartsColumnListGas = [
  3709. {
  3710. legend: 'T1',
  3711. seriesName: '(%)',
  3712. ymax: 1,
  3713. yname: '%',
  3714. linetype: 'line',
  3715. yaxispos: 'left',
  3716. color: '#00FFA8',
  3717. sort: 1,
  3718. xRotate: 0,
  3719. dataIndex: 'gasT1',
  3720. },
  3721. {
  3722. legend: 'T2',
  3723. seriesName: '(%)',
  3724. ymax: 1,
  3725. yname: '%',
  3726. linetype: 'line',
  3727. color: '#FDB146',
  3728. yaxispos: 'left',
  3729. sort: 1,
  3730. xRotate: 0,
  3731. dataIndex: 'gasT2',
  3732. },
  3733. {
  3734. legend: 'T3',
  3735. seriesName: '(%)',
  3736. ymax: 1,
  3737. yname: '%',
  3738. linetype: 'line',
  3739. color: '#DA3914',
  3740. yaxispos: 'left',
  3741. sort: 1,
  3742. xRotate: 0,
  3743. dataIndex: 'gasT3',
  3744. },
  3745. {
  3746. legend: 'T4',
  3747. seriesName: '(%)',
  3748. ymax: 1,
  3749. yname: '%',
  3750. linetype: 'line',
  3751. color: '#03C2EC',
  3752. yaxispos: 'left',
  3753. sort: 1,
  3754. xRotate: 0,
  3755. dataIndex: 'gasT4',
  3756. },
  3757. ];
  3758. export const initData = () => {
  3759. const num = 3;
  3760. const obj = {
  3761. angle: 0,
  3762. Hz: 35.0,
  3763. a: -0.0626027929595192,
  3764. b: 44.737585902203136,
  3765. c: -4047.5601190339376,
  3766. min: 300,
  3767. max: 1100.0,
  3768. };
  3769. const a = -0.0626,
  3770. m = 44.737589,
  3771. n = -4047.56012;
  3772. const maxList = [519, 587, 659.4, 737, 820.7];
  3773. const minList = [264, 303.7, 346, 387.2, 429.1];
  3774. const data = [];
  3775. for (let i = -1; i <= num; i++) {
  3776. const item = cloneDeep(obj);
  3777. item['a'] = Math.round((a + 0.003 * i) * 10000) / 10000;
  3778. item['Hz'] = 35 + i * 5;
  3779. item['c'] = n + 0.6 * i;
  3780. item['b'] = m + i * 1.9;
  3781. item['max'] = maxList[i + 1];
  3782. item['min'] = minList[i + 1];
  3783. data.push(item);
  3784. }
  3785. return data;
  3786. };
  3787. export const initDataCY = () => {
  3788. const data: any[] = [];
  3789. data.push({
  3790. a: 0,
  3791. b: 0.16832181672974755,
  3792. c: 0.8547171776797801,
  3793. min: 111,
  3794. max: 295,
  3795. });
  3796. return data;
  3797. };
  3798. export const fanInfoData = reactive({
  3799. fj: '一号回风井',
  3800. xh: 'FBCDZ No.29',
  3801. gl: '2×500',
  3802. edgl: '740',
  3803. eddy: '10000',
  3804. eddl: '38.4',
  3805. flfw: '110~260',
  3806. fyfw: '200~4100',
  3807. fbdj: 'ExdI',
  3808. ccrq: '2010.07',
  3809. sccj: '南阳防爆',
  3810. tjfs: '变频调节',
  3811. plfw: '30~50',
  3812. });
  3813. export const fanInfo = [
  3814. {
  3815. title: '风井',
  3816. code: 'fj',
  3817. value: '一号回风井',
  3818. },
  3819. {
  3820. title: '型号',
  3821. code: 'xh',
  3822. value: 'FBCDZ No.29',
  3823. },
  3824. {
  3825. title: '功率(kW)',
  3826. code: 'gl',
  3827. value: '2×500',
  3828. },
  3829. {
  3830. title: '额定转速(r/min)',
  3831. code: 'edgl',
  3832. value: '740',
  3833. },
  3834. {
  3835. title: '额定电压(V)',
  3836. code: 'eddy',
  3837. value: '10000',
  3838. },
  3839. {
  3840. title: '额定电流(A)',
  3841. code: 'eddl',
  3842. value: '38.4',
  3843. },
  3844. {
  3845. title: '风量范围(m³/s)',
  3846. code: 'flfw',
  3847. value: '110~260',
  3848. },
  3849. {
  3850. title: '风压范围(Pa)',
  3851. code: 'fyfw',
  3852. value: '200~4100',
  3853. },
  3854. {
  3855. title: '防爆等级',
  3856. code: 'fbdj',
  3857. value: 'ExdI',
  3858. },
  3859. {
  3860. title: '出厂日期',
  3861. code: 'ccrq',
  3862. value: '2010.07',
  3863. },
  3864. {
  3865. title: '生产厂家',
  3866. code: 'sccj',
  3867. value: '南阳防爆',
  3868. },
  3869. {
  3870. title: '调节方式',
  3871. code: 'tjfs',
  3872. value: '变频调节',
  3873. },
  3874. {
  3875. title: '频率可调范围(Hz)',
  3876. code: 'plfw',
  3877. value: '30~50',
  3878. },
  3879. ];
  3880. export const getSchamas = (): FormSchema[] => {
  3881. return [
  3882. {
  3883. field: 'fj',
  3884. component: 'Input',
  3885. label: '风井',
  3886. colProps: {
  3887. span: 6,
  3888. },
  3889. },
  3890. {
  3891. field: 'xh',
  3892. component: 'Input',
  3893. label: '型号',
  3894. colProps: {
  3895. span: 6,
  3896. },
  3897. },
  3898. {
  3899. field: 'gl',
  3900. component: 'Input',
  3901. label: '功率(kW)',
  3902. colProps: {
  3903. span: 6,
  3904. },
  3905. },
  3906. {
  3907. field: 'edgl',
  3908. component: 'Input',
  3909. label: '额定转速(r/min)',
  3910. colProps: {
  3911. span: 6,
  3912. },
  3913. },
  3914. {
  3915. field: 'eddy',
  3916. component: 'Input',
  3917. label: '额定电压(V)',
  3918. colProps: {
  3919. span: 6,
  3920. },
  3921. },
  3922. {
  3923. field: 'eddl',
  3924. component: 'Input',
  3925. label: '额定电流(A)',
  3926. colProps: {
  3927. span: 6,
  3928. },
  3929. },
  3930. {
  3931. field: 'flfw',
  3932. component: 'Input',
  3933. label: '风量范围(m³/s)',
  3934. colProps: {
  3935. span: 6,
  3936. },
  3937. },
  3938. {
  3939. field: 'fyfw',
  3940. component: 'Input',
  3941. label: '风压范围(Pa)',
  3942. colProps: {
  3943. span: 6,
  3944. },
  3945. },
  3946. {
  3947. field: 'fbdj',
  3948. component: 'Select',
  3949. label: '防爆等级',
  3950. colProps: {
  3951. span: 6,
  3952. },
  3953. componentProps: {
  3954. options: [
  3955. {
  3956. label: 'ExdI',
  3957. value: 'ExdI',
  3958. key: '1',
  3959. },
  3960. ],
  3961. },
  3962. },
  3963. {
  3964. field: 'ccrq',
  3965. component: 'Input',
  3966. label: '出厂日期',
  3967. colProps: {
  3968. span: 6,
  3969. },
  3970. },
  3971. {
  3972. field: 'sccj',
  3973. component: 'Input',
  3974. label: '生产厂家',
  3975. colProps: {
  3976. span: 6,
  3977. },
  3978. },
  3979. {
  3980. field: 'tjfs',
  3981. component: 'Select',
  3982. label: '调节方式',
  3983. colProps: {
  3984. span: 6,
  3985. },
  3986. componentProps: {
  3987. options: [
  3988. {
  3989. label: '变频调节',
  3990. value: '变频调节',
  3991. key: '1',
  3992. },
  3993. ],
  3994. },
  3995. },
  3996. {
  3997. field: 'plfw',
  3998. component: 'Input',
  3999. label: '频率可调范围(Hz)',
  4000. colProps: {
  4001. span: 6,
  4002. },
  4003. },
  4004. ];
  4005. };
  4006. export const getSchamas1 = (): FormSchema[] => {
  4007. return [
  4008. {
  4009. field: 'Hz',
  4010. component: 'InputNumber',
  4011. label: '频率(Hz)',
  4012. required: true,
  4013. colProps: {
  4014. span: 6,
  4015. },
  4016. },
  4017. {
  4018. field: 'a',
  4019. component: 'InputNumber',
  4020. label: '二次项系数',
  4021. required: true,
  4022. colProps: {
  4023. span: 6,
  4024. },
  4025. },
  4026. {
  4027. field: 'b',
  4028. component: 'InputNumber',
  4029. label: '一次项系数',
  4030. required: true,
  4031. colProps: {
  4032. span: 6,
  4033. },
  4034. },
  4035. {
  4036. field: 'c',
  4037. component: 'InputNumber',
  4038. label: '常数项系数',
  4039. required: true,
  4040. colProps: {
  4041. span: 6,
  4042. },
  4043. },
  4044. {
  4045. field: 'min',
  4046. component: 'InputNumber',
  4047. label: '风量下限(m³/s)',
  4048. required: true,
  4049. colProps: {
  4050. span: 6,
  4051. },
  4052. },
  4053. {
  4054. field: 'max',
  4055. component: 'InputNumber',
  4056. label: '风量上限(m³/s)',
  4057. required: true,
  4058. colProps: {
  4059. span: 6,
  4060. },
  4061. },
  4062. ];
  4063. };
  4064. export const lineFormData = reactive({
  4065. Hz: null,
  4066. a: null,
  4067. b: null,
  4068. c: null,
  4069. min: null,
  4070. max: null,
  4071. });
  4072. // ==================== 瓦斯排放仿真数据定义 ====================
  4073. /** 仿真状态枚举 */
  4074. export enum GasDischargeSimState {
  4075. IDLE = 'IDLE',
  4076. RUNNING = 'RUNNING',
  4077. PAUSED = 'PAUSED',
  4078. WINDING_DOWN = 'WINDING_DOWN',
  4079. COMPLETED = 'COMPLETED',
  4080. ABORTED = 'ABORTED',
  4081. }
  4082. /** 仿真状态中文映射 */
  4083. export const GAS_DISCHARGE_STEP_NAMES: Record<GasDischargeSimState, string> = {
  4084. [GasDischargeSimState.IDLE]: '待机',
  4085. [GasDischargeSimState.RUNNING]: '排放中',
  4086. [GasDischargeSimState.PAUSED]: '已暂停',
  4087. [GasDischargeSimState.WINDING_DOWN]: '降频收尾',
  4088. [GasDischargeSimState.COMPLETED]: '排放完成',
  4089. [GasDischargeSimState.ABORTED]: '已终止',
  4090. };
  4091. /** 仿真状态对应颜色 */
  4092. export const GAS_DISCHARGE_STATE_COLOR: Record<GasDischargeSimState, string> = {
  4093. [GasDischargeSimState.IDLE]: '#8c8c8c',
  4094. [GasDischargeSimState.RUNNING]: '#1890ff',
  4095. [GasDischargeSimState.PAUSED]: '#faad14',
  4096. [GasDischargeSimState.WINDING_DOWN]: '#faad14',
  4097. [GasDischargeSimState.COMPLETED]: '#52c41a',
  4098. [GasDischargeSimState.ABORTED]: '#8c8c8c',
  4099. };
  4100. /** 分段逻辑表行 */
  4101. export interface SegmentTableRow {
  4102. gas1Min: number;
  4103. gas1Max: number;
  4104. targetHz: number;
  4105. stepHz: number; // 每步渐进增量
  4106. label: string;
  4107. }
  4108. /**
  4109. * 5档渐进排放表 — 按 T1 浓度区间决定目标频率和每步渐进量。
  4110. * 步进 0.3-0.6Hz/周期 × 10min/周期 ≈ 48步精细扫描全频段
  4111. */
  4112. export const GAS_DISCHARGE_SEGMENT_TABLE: SegmentTableRow[] = [
  4113. { gas1Min: 0, gas1Max: 0.5, targetHz: 35, stepHz: 0, label: '维持当前' },
  4114. { gas1Min: 0.5, gas1Max: 0.8, targetHz: 40, stepHz: 2, label: '轻微排放' },
  4115. { gas1Min: 0.8, gas1Max: 1.0, targetHz: 45, stepHz: 3, label: '加强排放' },
  4116. { gas1Min: 1.0, gas1Max: 1.5, targetHz: 48, stepHz: 5, label: '高浓度排放' },
  4117. { gas1Min: 1.5, gas1Max: Infinity, targetHz: 50, stepHz: 5, label: '满频排放' },
  4118. ];
  4119. /** 根据gas1浓度查找目标频率和步进 */
  4120. export function lookupFrequencyByGas1(gas1: number): { frequency: number; stepHz: number; label: string } {
  4121. for (const row of GAS_DISCHARGE_SEGMENT_TABLE) {
  4122. if (gas1 >= row.gas1Min && gas1 < row.gas1Max) {
  4123. return { frequency: row.targetHz, stepHz: row.stepHz, label: row.label };
  4124. }
  4125. }
  4126. return { frequency: 50, stepHz: 2, label: '满频排放' };
  4127. }
  4128. /**
  4129. * 仿真可配置参数 — 用户可在弹窗参数配置中修改,启动时冻结到 config 中。
  4130. *
  4131. * 浓度相关:initialGas1/2/3, emissionRate, co2EmissionRatio
  4132. * 空间参数:workfaceVolume(越大浓度变化越慢), tunnelLength(越长风越大), crossSection(风速=风量/60/A)
  4133. * 风机参数:ratedAirVolume(@50Hz), frequencyK(线性系数), normalFrequencyHz(从真实数据读)
  4134. * 物理约束:maxWindSpeed(4m/s上限,防煤尘爆炸), minWindSpeed(0.25m/s下限,最低排尘风速)
  4135. * 时间控制:stableDurationSec(达标稳定需30min), cycleDurationMin(两次调频间隔10min)
  4136. * 回风模型:decayFactor(gas2 = delayedGas1 × factor,默认0.82即18%衰减)
  4137. * 时间基准:baseTime(日志/曲线的时间起点,如 2025-05-02 13:02:01)
  4138. */
  4139. export interface GasDischargeConfig {
  4140. initialGas1: number; // 工作面初始瓦斯 % (1.5)
  4141. initialGas2: number; // 回风初始瓦斯 % (0.2)
  4142. initialGas3: number; // 入口瓦斯 % (0)
  4143. emissionRate: number; // 瓦斯涌出量 m³/s (0.015)
  4144. co2EmissionRatio: number; // CO₂/瓦斯涌出比率 (0.5)
  4145. workfaceVolume: number; // 工作面体积 m³ (600)
  4146. tunnelLength: number; // 回风巷长度 m (150)
  4147. ratedAirVolume: number; // 额定风量@50Hz m³/min (400)
  4148. frequencyK: number; // 风量线性系数 k (1.0)
  4149. normalFrequencyHz: number; // 正常频率取真实数据 (35)
  4150. decayFactor: number; // 回风衰减系 (0.82 = 18%衰减)
  4151. crossSection: number; // 巷道断面积 m² (6)
  4152. maxWindSpeed: number; // 风速上限 m/s (4.0)
  4153. minWindSpeed: number; // 风速下限 m/s (0.25)
  4154. warningThreshold: number; // 预警提示阈值 % (0.8)
  4155. dangerThreshold: number; // 超限危险阈值 % (1.0)
  4156. stopGasThreshold: number; // 达标阈值 % (1.0)
  4157. stableDurationSec: number; // 达标持续 秒 (1800 = 30分)
  4158. baseTime: string; // 时间基准 'YYYY-MM-DDTHH:MM:SS'
  4159. cycleDurationMin: number; // 调频周期 分 (10)
  4160. }
  4161. /** 仿真默认参数 */
  4162. export const GAS_DISCHARGE_DEFAULT_CONFIG: GasDischargeConfig = {
  4163. initialGas1: 1.48,
  4164. initialGas2: 0.2,
  4165. initialGas3: 0.0,
  4166. emissionRate: 0.025,
  4167. co2EmissionRatio: 0.8,
  4168. workfaceVolume: 600,
  4169. tunnelLength: 800,
  4170. ratedAirVolume: 400,
  4171. frequencyK: 1.0,
  4172. normalFrequencyHz: 29,
  4173. decayFactor: 0.32,
  4174. crossSection: 8,
  4175. maxWindSpeed: 4.0,
  4176. minWindSpeed: 0.25,
  4177. warningThreshold: 0.8,
  4178. dangerThreshold: 1.0,
  4179. stopGasThreshold: 1.0,
  4180. stableDurationSec: 1800,
  4181. baseTime: '2025-05-02T13:02:01',
  4182. cycleDurationMin: 10,
  4183. };
  4184. /** 仿真数据点 */
  4185. export interface GasDischargeSimDataPoint {
  4186. simTime: number;
  4187. realTime: string;
  4188. T;
  4189. gas1: number;
  4190. gas2: number;
  4191. gas3: number;
  4192. co2: number;
  4193. frequencyHz: number;
  4194. airVolumeM3: number;
  4195. windSpeed: number; // 风速 m/s
  4196. state: GasDischargeSimState;
  4197. }
  4198. /** 事件日志条目 */
  4199. export interface GasDischargeEventLogEntry {
  4200. id: number;
  4201. simTime: number;
  4202. realTime: string;
  4203. eventType: 'info' | 'warning' | 'state_change' | 'frequency_adjust' | 'speed_limit';
  4204. message: string;
  4205. gas1: number;
  4206. gas2: number;
  4207. co2: number;
  4208. frequencyHz: number;
  4209. airVolumeM3: number;
  4210. windSpeed: number;
  4211. }
  4212. /** 瓦斯排放仿真趋势图列定义 */
  4213. export const chartsColumnListGasDischarge = [
  4214. {
  4215. legend: '工作面瓦斯',
  4216. seriesName: '(%)',
  4217. ymax: 4,
  4218. yname: '%',
  4219. linetype: 'line',
  4220. yaxispos: 'left',
  4221. color: '#00FFA8',
  4222. sort: 1,
  4223. xRotate: 0,
  4224. dataIndex: 'gas1',
  4225. },
  4226. {
  4227. legend: '回风瓦斯',
  4228. seriesName: '(%)',
  4229. ymax: 2,
  4230. yname: '%',
  4231. linetype: 'line',
  4232. yaxispos: 'left',
  4233. color: '#FDB146',
  4234. sort: 2,
  4235. xRotate: 0,
  4236. dataIndex: 'gas2',
  4237. },
  4238. {
  4239. legend: '频率',
  4240. seriesName: '(Hz)',
  4241. ymax: 50,
  4242. yname: 'Hz',
  4243. linetype: 'line',
  4244. yaxispos: 'right',
  4245. color: '#AE19FF',
  4246. sort: 3,
  4247. xRotate: 0,
  4248. dataIndex: 'frequencyHz',
  4249. },
  4250. {
  4251. legend: '风量',
  4252. seriesName: '(m³/min)',
  4253. ymax: 400,
  4254. yname: 'm³/min',
  4255. linetype: 'line',
  4256. yaxispos: 'right',
  4257. color: '#03C2EC',
  4258. sort: 4,
  4259. xRotate: 0,
  4260. dataIndex: 'airVolumeM3',
  4261. },
  4262. ];
  4263. const componentsCaches = new Map<string, any>();
  4264. export function getModelComponent(is2DModel: boolean = false, type: string = '') {
  4265. if (!is2DModel) return EntryThree;
  4266. const getComponent = (name) => {
  4267. if (!componentsCaches.has(name)) {
  4268. componentsCaches.set(name, import(`./components/${name}.vue`));
  4269. }
  4270. return componentsCaches.get(name);
  4271. };
  4272. // @ts-ignore
  4273. return defineAsyncComponent(() => {
  4274. // 为了支持SVG组件切换时不闪烁,先行下载并缓存
  4275. // if (!componentsCaches.has('fanLocalSVG')) componentsCaches.set('fanLocalSVG', import('./components/fanLocalSVG.vue'));
  4276. switch (type) {
  4277. case 'fanLocal':
  4278. return getComponent('fanTunnelSVG');
  4279. case 'fanLocalDual':
  4280. return getComponent('fanTunnelDualSVG');
  4281. default:
  4282. return getComponent('fanLocalSVG');
  4283. }
  4284. });
  4285. }