Extract Data from a File

To extract data from a file, follow the steps in the previous section for getting a token with the data:read and data:write scopes, encoding the urn of the file using the jsonlite::base64_enc() function, and translating the file into SVF format using the translateSvf() function. Next, retrieve metadata for a file using the getMetadata() function, which returns an object with the type, name, and guid of the file. Note the guid and store it in .Renviron.

resp <- getMetadata(urn = myEncodedUrn, token = myToken)
myGuid <- resp$content$data$metadata[[1]]$guid

To get the object tree of a model, use the getObjectTree() function.

resp <- getObjectTree(guid = myGuid, urn = myEncodedUrn, token = myToken)
resp
$content
$content$data
$content$data$type
[1] "objects"

$content$data$objects
$content$data$objects[[1]]
$content$data$objects[[1]]$objectid
[1] 24

$content$data$objects[[1]]$name
[1] "Model"

$content$data$objects[[1]]$objects
$content$data$objects[[1]]$objects[[1]]
$content$data$objects[[1]]$objects[[1]]$objectid
[1] 354

$content$data$objects[[1]]$objects[[1]]$name
[1] "3D Solids (5)"

$content$data$objects[[1]]$objects[[1]]$objects
$content$data$objects[[1]]$objects[[1]]$objects[[1]]
$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objectid
[1] 351

$content$data$objects[[1]]$objects[[1]]$objects[[1]]$name
[1] "Box (4)"

$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objects
$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objects[[1]]
$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objects[[1]]$objectid
[1] 117

$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objects[[1]]$name
[1] "Solid [183]"


$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objects[[2]]
$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objects[[2]]$objectid
[1] 127

$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objects[[2]]$name
[1] "Solid [191]"


$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objects[[3]]
$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objects[[3]]$objectid
[1] 131

$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objects[[3]]$name
[1] "Solid [195]"


$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objects[[4]]
$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objects[[4]]$objectid
[1] 163

$content$data$objects[[1]]$objects[[1]]$objects[[1]]$objects[[4]]$name
[1] "Solid [20F]"


$content$data$objects[[1]]$objects[[1]]$objects[[2]]
$content$data$objects[[1]]$objects[[1]]$objects[[2]]$objectid
[1] 352

$content$data$objects[[1]]$objects[[1]]$objects[[2]]$name
[1] "Sphere (1)"

$content$data$objects[[1]]$objects[[1]]$objects[[2]]$objects
$content$data$objects[[1]]$objects[[1]]$objects[[2]]$objects[[1]]
$content$data$objects[[1]]$objects[[1]]$objects[[2]]$objects[[1]]$objectid
[1] 149

$content$data$objects[[1]]$objects[[1]]$objects[[2]]$objects[[1]]$name
[1] "Solid [1DA]"


$content$data$objects[[1]]$objects[[2]]
$content$data$objects[[1]]$objects[[2]]$objectid
[1] 355

$content$data$objects[[1]]$objects[[2]]$name
[1] "Surfaces (1)"

$content$data$objects[[1]]$objects[[2]]$objects
$content$data$objects[[1]]$objects[[2]]$objects[[1]]
$content$data$objects[[1]]$objects[[2]]$objects[[1]]$objectid
[1] 353

$content$data$objects[[1]]$objects[[2]]$objects[[1]]$name
[1] "Planar (1)"

$content$data$objects[[1]]$objects[[2]]$objects[[1]]$objects
$content$data$objects[[1]]$objects[[2]]$objects[[1]]$objects[[1]]
$content$data$objects[[1]]$objects[[2]]$objects[[1]]$objects[[1]]$objectid
[1] 142

$content$data$objects[[1]]$objects[[2]]$objects[[1]]$objects[[1]]$name
[1] "Surface [1C1]"


$path
[1] "https://developer.api.autodesk.com/modelderivative/v2/designdata/dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6Y3JhenlidWNrZXQvYWVyaWFsLmR3Zw==/metadata/e30bd031-d13a-a976-9153-78100829986a"

$response
Response [https://developer.api.autodesk.com/modelderivative/v2/designdata/dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6Y3JhenlidWNrZXQvYWVyaWFsLmR3Zw==/metadata/e30bd031-d13a-a976-9153-78100829986a]
  Date: 2016-11-14 01:49
  Status: 200
  Content-Type: application/json; charset=utf-8
  Size: 559 B


attr(,"class")
[1] "getObjectTree"

To extract data from the model, use the getData() function.

Last updated

Was this helpful?