从dae文件获取预览图像,以显示在UIImage中

时间:2019-06-02 22:44:17

标签: swift uitableview uiimage arkit 3d-model

我正在构建增强现实应用程序,并希望显示可用DAE文件的预览图像。

是否可以使用Swift从DAE文件中提取图像数据并将其加载到UIImage中?

1 个答案:

答案 0 :(得分:0)

开箱即用,没有可以调用的功能,该功能将从///Pin setup for the Sensor const int CLOCK_PIN = 18; const int DATA_PIN = 19; const int DATA_PIN2 = 17; ///12-bit sensor const int BIT_COUNT = 12; void setup() { //setup our pins pinMode(DATA_PIN, INPUT); pinMode(CLOCK_PIN, OUTPUT); //give some default values digitalWrite(CLOCK_PIN, HIGH); Serial.begin(9600); } void loop() { unsigned long reading1 = readPosition1(); Serial.print(reading1,BIN); Serial.print(","); delay(50); } //read the current angular position int readPosition1() { unsigned long sample1 = shiftIn(DATA_PIN, CLOCK_PIN, BIT_COUNT); delayMicroseconds(25); // delay for clock return sample1; } //read in a byte of data from the digital input of the board. unsigned long shiftIn(const int data_pin, const int clock_pin, const int bit_count) { unsigned long data = 0; for (int i=0; i<bit_count; i++) { data <<= 1; digitalWrite(clock_pin, LOW); delayMicroseconds(1); digitalWrite(clock_pin, HIGH); delayMicroseconds(1); data |= digitalRead(data_pin); } return data; } 文件中提取屏幕快照。但这并不是说无法在设备上执行此操作。

要了解您的要求,请考虑不同的组件。

使用ARSCNView加载.dae文件,该文件是.dae文件的读取器。传统上,ARSCNView是作为子视图添加到ViewController的。在这种情况下,您将需要查看器将3D文件渲染到屏幕外,因此您需要创建ARSCNView,但不要将其添加为VC 的子视图(我会在初始设置过程中添加它以确保所有加载) ,然后注释掉该行)

将3D加载到ARSCNView后,请使用以下功能将视图的上下文提取为JPG图像

.dae

并提取上下文并调整JPG的大小:

let viewSnapshot = takeSnapshotOfView(view: yourARSCNView)