#INTERFACE CAF puts "================" puts "OCC1228" puts "================" puts "" # Basic attributes # # Testing attribute: TDataStd_Point # # Testing command: SetPoint # Testing command: GetPoint # # ANALOG: puts "caf001-G3" # Create a new document and set UndoLimit NewDocument Doc BinOcaf UndoLimit Doc 100 # Open a transaction NewCommand Doc set aTokList { :,} # Add an attribute to a data framework set aSetX1 10 set aSetY1 20 set aSetZ1 30 point aPoint1 ${aSetX1} ${aSetY1} ${aSetZ1} set aDumpPoint1 [dump aPoint1] # [llength ${aDumpPoint1}] = 10 # Format of ${aDumpPoint1}: # *********** Dump of aPoint1 ************* # Point : 1.000000000000000e+01, 2.000000000000000e+01, 3.000000000000000e+01 set X_Point1 [lindex [split [lindex ${aDumpPoint1} 7] ${aTokList}] 0] set Y_Point1 [lindex [split [lindex ${aDumpPoint1} 8] ${aTokList}] 0] set Z_Point1 [lindex [split [lindex ${aDumpPoint1} 9] ${aTokList}] 0] set aLabel 0:2 SetPoint Doc ${aLabel} aPoint1 # Close/Open the transaction NewCommand Doc # Save the document set aFile ${imagedir}/OCC1228-[file tail [info script]].cbf file delete ${aFile} catch {SaveAs Doc ${aFile}} if { ![file exists ${aFile}] } { puts "There is not ${aFile} file; SaveAs command: Error" puts "OCC1228: ERROR (case 1)" } #catch {exec chmod 777 ${aFile}} # Restore the document Close Doc catch {Open ${aFile} DDoc} # Get a value of the attribute set aGetAttr3 "" set IsDone [catch {set aGetAttr3 [GetPoint DDoc ${aLabel}]} aResult] if { ${IsDone} != 0 } { puts ${aResult} puts "Get a value of TDataStd_Point attribute from restoring document: Error" puts "OCC1228: ERROR (case 2)" } catch {GetPoint DDoc ${aLabel} aPoint5} set aDumpPoint5 [dump aPoint5] set X_Point5 [lindex [split [lindex ${aDumpPoint5} 7] ${aTokList}] 0] set Y_Point5 [lindex [split [lindex ${aDumpPoint5} 8] ${aTokList}] 0] set Z_Point5 [lindex [split [lindex ${aDumpPoint5} 9] ${aTokList}] 0] if { ${X_Point1} != ${X_Point5} || ${Y_Point1} != ${Y_Point5} || ${Z_Point1} != ${Z_Point5} } { puts "X_Point1=${X_Point1} X_Point5=${X_Point5}" puts "Y_Point1=${Y_Point1} Y_Point5=${Y_Point5}" puts "Z_Point1=${Z_Point1} Z_Point5=${Z_Point5}" puts "Get a value of TDataStd_Point attribute from restoring document: Error" puts "OCC1228: ERROR (case 3)" } else { puts "Get a value of TDataStd_Point attribute from restoring document: OK" puts "OCC1228: OK" }