private void rebuildFairing(bool userInput) { Transform model = part.transform.FindModel(modelName); if (model != null) { float scale = getCurrentScale(); model.transform.localScale = new Vector3(scale, scale, scale); } else { SSTUUtils.recursePrintComponents(part.gameObject, ""); } createPanels(); updateFairingMassAndCost(); updateNodePositions(userInput); updateShieldStatus(); enableEditorColliders(HighLogic.LoadedSceneIsEditor); setPanelRotations(currentRotation); SSTUModInterop.onPartGeometryUpdate(part, false); recreateDragCubes(); }