 
         if size["scale"] != nil {
             let s: Float = Float(size["scale"] as! CGFloat)
-            self.scale = SCNVector3Make(s, s, s)
+            self.modelScale = SCNVector3Make(s, s, s)
+            if self.modelNode != nil {
+                self.modelNode?.scale = self.modelScale!
+            }
         }
     }
 

@objc public class ARNodeView: SCNNode {

    var modelNode: SCNNode?

    override public init() {
        super.init()

        // We don't want this to be affected by the positioning
        // within the scene.
        self.modelNode?.position = SCNVector3Make(0, 0, 0)
        self.modelNode?.scale = self.modelScale ?? SCNVector3Make(1, 1, 1)
        self.geometry?.firstMaterial?.transparency = 0.0
    }

    func setGeoposition(_ position: NSDictionary) {
