init
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
import hashlib, base64
|
||||
|
||||
arrayTypesMapping = [
|
||||
" ", # VTK_VOID 0
|
||||
" ", # VTK_BIT 1
|
||||
"b", # VTK_CHAR 2
|
||||
"B", # VTK_UNSIGNED_CHAR 3
|
||||
"h", # VTK_SHORT 4
|
||||
"H", # VTK_UNSIGNED_SHORT 5
|
||||
"i", # VTK_INT 6
|
||||
"I", # VTK_UNSIGNED_INT 7
|
||||
"l", # VTK_LONG 8
|
||||
"L", # VTK_UNSIGNED_LONG 9
|
||||
"f", # VTK_FLOAT 10
|
||||
"d", # VTK_DOUBLE 11
|
||||
"L", # VTK_ID_TYPE 12
|
||||
" ", # unspecified 13
|
||||
" ", # unspecified 14
|
||||
"b", # signed_char 15
|
||||
]
|
||||
|
||||
javascriptMapping = {
|
||||
"b": "Int8Array",
|
||||
"B": "Uint8Array",
|
||||
"h": "Int16Array",
|
||||
"H": "Int16Array",
|
||||
"i": "Int32Array",
|
||||
"I": "Uint32Array",
|
||||
"l": "Int32Array",
|
||||
"L": "Uint32Array",
|
||||
"f": "Float32Array",
|
||||
"d": "Float64Array",
|
||||
}
|
||||
|
||||
|
||||
def iteritems(d, **kwargs):
|
||||
return iter(d.items(**kwargs))
|
||||
|
||||
|
||||
def base64Encode(x):
|
||||
return base64.b64encode(x).decode("utf-8")
|
||||
|
||||
|
||||
def hashDataArray(dataArray):
|
||||
hashedBit = hashlib.md5(memoryview(dataArray)).hexdigest()
|
||||
typeCode = arrayTypesMapping[dataArray.GetDataType()]
|
||||
return "%s_%d%s" % (hashedBit, dataArray.GetSize(), typeCode)
|
||||
|
||||
|
||||
def getJSArrayType(dataArray):
|
||||
return javascriptMapping[arrayTypesMapping[dataArray.GetDataType()]]
|
||||
|
||||
|
||||
def getReferenceId(ref):
|
||||
if ref:
|
||||
try:
|
||||
return ref.__this__[1:17]
|
||||
except:
|
||||
idStr = str(ref)[-12:-1]
|
||||
# print('====> fallback ID %s for %s' % (idStr, ref))
|
||||
return idStr
|
||||
return "0x0"
|
||||
Reference in New Issue
Block a user