# PartOperation

Roblox Engine API class from Roblox Studio 0.744.0.7441077 (version-7aaa6838d36c4448).

- Inherits from, nearest first: [TriangleMeshPart](https://rapi.sleaze.dev/classes/TriangleMeshPart.md), [BasePart](https://rapi.sleaze.dev/classes/BasePart.md), [PVInstance](https://rapi.sleaze.dev/classes/PVInstance.md), [Instance](https://rapi.sleaze.dev/classes/Instance.md), [Object](https://rapi.sleaze.dev/classes/Object.md)
- Subclasses: [IntersectOperation](https://rapi.sleaze.dev/classes/IntersectOperation.md), [NegateOperation](https://rapi.sleaze.dev/classes/NegateOperation.md), [UnionOperation](https://rapi.sleaze.dev/classes/UnionOperation.md)
- Memory category: Instances
- HTML page: https://rapi.sleaze.dev/classes/PartOperation/
- Roblox documentation: https://create.roblox.com/docs/reference/engine/classes/PartOperation

An abstract class that all parts based on solid modeling inherit from.

## Properties

### RenderFidelity

```luau
PartOperation.RenderFidelity: Enum.RenderFidelity = Enum.RenderFidelity.Automatic
```

- Tags: Read capabilities: Basic + CSG, Write capabilities: PluginOrOpenCloud

The level of detail used to render the solid modeled part.

### SmoothingAngle

```luau
PartOperation.SmoothingAngle: number = 0
```

- Tags: Read capabilities: Basic + CSG, Write capabilities: PluginOrOpenCloud

An angle in degrees which affects the smooth shading of a solid modeled part.

### AssetId

```luau
PartOperation.AssetId: string = ""
```

- Tags: Hidden, Not scriptable, Roblox engine security, Read capabilities: Basic + CSG

### ChildData

```luau
PartOperation.ChildData: string = ""
```

- Tags: Hidden, Not replicated, Not scriptable, Roblox engine security, Read capabilities: Basic + CSG

### ChildData2

```luau
PartOperation.ChildData2: SharedString
```

- Tags: Hidden, Not replicated, Not scriptable, Roblox engine security, Read capabilities: Basic + CSG

### ComponentIndex

```luau
PartOperation.ComponentIndex: number = -1
```

- Tags: Hidden, Not replicated, Not scriptable, Roblox engine security, Read capabilities: Basic + CSG

### Content

```luau
PartOperation.Content: Content
```

- Tags: Hidden, Not scriptable, Roblox engine security, Read capabilities: Basic + CSG

### DCDPropertyData

```luau
PartOperation.DCDPropertyData: CSGPropertyData
```

- Tags: Hidden, Not replicated, Not scriptable, Roblox engine security, Read capabilities: Basic + CSG

### FormFactor

```luau
PartOperation.FormFactor: Enum.FormFactor = Enum.FormFactor.Custom
```

- Tags: Hidden, Not scriptable, Roblox engine security, Read capabilities: Basic + CSG

### InitialSize

```luau
PartOperation.InitialSize: Vector3 = Vector3.one
```

- Tags: Hidden, Not scriptable, Roblox engine security, Read capabilities: Basic + CSG

### MeshData

```luau
PartOperation.MeshData: string = ""
```

- Tags: Hidden, Not scriptable, Roblox engine security, Read capabilities: Basic + CSG

### MeshData2

```luau
PartOperation.MeshData2: SharedString
```

- Tags: Hidden, Not scriptable, Roblox engine security, Read capabilities: Basic + CSG

### OffCentered

```luau
PartOperation.OffCentered: boolean = false
```

- Tags: Hidden, Not replicated, Not scriptable, Roblox engine security, Read capabilities: Basic + CSG

### PhysicsData

```luau
PartOperation.PhysicsData: string = ""
```

- Tags: Hidden, Not scriptable, Roblox engine security, Read capabilities: Basic + CSG

### SolidMeshHolder

```luau
PartOperation.SolidMeshHolder: NetAssetRef
```

- Tags: Hidden, Not scriptable, Read capabilities: Basic + CSG

### TriangleCount

```luau
PartOperation.TriangleCount: number = 0
```

- Tags: Write: Roblox engine security, Read capabilities: Basic + CSG

The number of polygons in this solid model.

### UsePartColor

```luau
PartOperation.UsePartColor: boolean = false
```

- Tags: Read capabilities: Basic + CSG

Sets whether the [`PartOperation`](https://rapi.sleaze.dev/classes/PartOperation.md) can be recolored using inherited color properties.

### ManifoldMesh_DEPRECATED

```luau
PartOperation.ManifoldMesh_DEPRECATED: SharedString
```

- Tags: Deprecated, Hidden, Not replicated, Not scriptable, Roblox engine security, Read capabilities: Basic + CSG

## Methods

### SubstituteGeometry

```luau
PartOperation:SubstituteGeometry(source: Instance)
```

- Tags: Capabilities: Basic + CSG

Substitutes the geometry of this [`PartOperation`](https://rapi.sleaze.dev/classes/PartOperation.md) with the geometry of another [`PartOperation`](https://rapi.sleaze.dev/classes/PartOperation.md).

Parameters:

- `source`: The [`PartOperation`](https://rapi.sleaze.dev/classes/PartOperation.md) whose geometry will substitute the geometry of this [`PartOperation`](https://rapi.sleaze.dev/classes/PartOperation.md).

## Inherited members

- From [TriangleMeshPart](https://rapi.sleaze.dev/classes/TriangleMeshPart.md): `FluidFidelity`, `FluidFidelityInternal`, `InertiaMigrated`, `UnscaledCofm`, `UnscaledVolInertiaDiags`, `UnscaledVolInertiaOffDiags`, `UnscaledVolume`, `CollisionFidelity`, `CollisionPrecision`, `PCDRequestId`, `AeroMeshData`, `ConvexDecompHolder`, `MeshSize`, `PhysicalConfigData`
- From [BasePart](https://rapi.sleaze.dev/classes/BasePart.md): `BrickColor`, `CastShadow`, `Color`, `Color3uint8`, `Material`, `MaterialVariant`, `MaterialVariantSerialized`, `Reflectance`, `Transparency`, `brickColor`, `AssemblyAngularVelocity`, `AssemblyCenterOfMass`, `AssemblyLinearVelocity`, `AssemblyMass`, `AssemblyRootPart`, `DraggingV1`, `EnableFluidForces`, `NetworkOwnershipRule`, `AudioCanCollide`, `CanCollide`, `CanQuery`, `CanTouch`, `CollisionGroup`, `CollisionGroupReplicate`, `CollisionGroupId`, `LocalTransparencyModifier`, `Locked`, `NetworkIsSleeping`, `NetworkOwnerV3`, `ResizeableFaces`, `ResizeIncrement`, `Rotation`, `RotVelocity`, `SpecificGravity`, `Velocity`, `Anchored`, `CenterOfMass`, `CurrentPhysicalProperties`, `CustomPhysicalProperties`, `Mass`, `Massless`, `ReceiveAge`, `RootPriority`, `siz`, `size`, `Elasticity`, `Friction`, `PivotOffset`, `BackSurface`, `BottomSurface`, `FrontSurface`, `LeftSurface`, `RightSurface`, `TopSurface`, `BackParamA`, `BackParamB`, `BackSurfaceInput`, `BottomParamA`, `BottomParamB`, `BottomSurfaceInput`, `FrontParamA`, `FrontParamB`, `FrontSurfaceInput`, `LeftParamA`, `LeftParamB`, `LeftSurfaceInput`, `RightParamA`, `RightParamB`, `RightSurfaceInput`, `TopParamA`, `TopParamB`, `TopSurfaceInput`, `CFrame`, `ExtentsCFrame`, `ExtentsSize`, `Orientation`, `PhysicsRepRootPart`, `PhysicsRepRootRef`, `Position`, `ReplicationPV`, `Size`, `AngularAccelerationToTorque`, `ApplyAngularImpulse`, `ApplyImpulse`, `ApplyImpulseAtPosition`, `BindToCollisionSummaries`, `CanCollideWith`, `CanSetNetworkOwnership`, `GetClosestPointOnSurface`, `GetConnectedParts`, `GetJoints`, `GetMass`, `GetNetworkOwner`, `GetNetworkOwnershipAuto`, `GetNoCollisionConstraints`, `GetPhysicsCost`, `GetTouchingParts`, `GetVelocityAtPosition`, `IntersectAsync`, `IsGrounded`, `Resize`, `SetNetworkOwner`, `SetNetworkOwnershipAuto`, `SubtractAsync`, `TorqueToAngularAcceleration`, `UnionAsync`, `BreakJoints`, `GetRenderCFrame`, `GetRootPart`, `MakeJoints`, `breakJoints`, `getMass`, `makeJoints`, `resize`, `NetworkOwnerChanged`, `Touched`, `TouchEnded`, `LocalSimulationTouched`, `OutfitChanged`, `StoppedTouching`
- From [PVInstance](https://rapi.sleaze.dev/classes/PVInstance.md): `Pivot Offset`, `Origin`, `GetPivot`, `PivotTo`
- From [Instance](https://rapi.sleaze.dev/classes/Instance.md): `Archivable`, `archivable`, `Attributes`, `AttributesReplicate`, `AttributesSerialize`, `HistoryId`, `Name`, `Parent`, `PredictionMode`, `PropertyStatusStudio`, `RobloxLocked`, `SerializedOverrides`, `SourceAssetId`, `Tags`, `UniqueId`, `numExpectedDirectChildren`, `DataCost`, `Capabilities`, `DefinesCapabilities`, `IsInSandbox`, `Sandboxed`, `AddTag`, `ClearAllChildren`, `Clone`, `Destroy`, `FindFirstAncestor`, `FindFirstAncestorOfClass`, `FindFirstAncestorWhichIsA`, `FindFirstChild`, `FindFirstChildOfClass`, `FindFirstChildWhichIsA`, `FindFirstDescendant`, `GetActor`, `GetAttribute`, `GetAttributeChangedSignal`, `GetAttributes`, `GetChildren`, `GetDebugId`, `GetDescendants`, `GetFullName`, `GetStyled`, `GetStyledPropertyChangedSignal`, `GetTags`, `HasTag`, `IsAncestorOf`, `IsDescendantOf`, `IsPropertyModified`, `QueryDescendants`, `RemoveTag`, `ResetPropertyToDefault`, `SetAttribute`, `WaitForChild`, `Remove`, `children`, `clone`, `destroy`, `findFirstChild`, `getChildren`, `isDescendantOf`, `remove`, `AncestryChanged`, `AttributeChanged`, `ChildAdded`, `ChildRemoved`, `DescendantAdded`, `DescendantRemoving`, `Destroying`, `StyledPropertiesChanged`, `childAdded`
- From [Object](https://rapi.sleaze.dev/classes/Object.md): `ClassName`, `className`, `GetPropertyChangedSignal`, `IsA`, `isA`, `Changed`
