PartOperation
*Pronto este contenido estará disponible en tu idioma seleccionado.
An abstract class that all parts based on solid modeling inherit from.
Resumen
Propiedades
The level of detail used to render the solid modeled part.
An angle in degrees which affects the smooth shading of a solid modeled part.
The number of polygons in this solid model.
Sets whether the PartOperation can be recolored using inherited color properties.
Determines the level of detail the part's physics will adhere to its mesh.
Determines the geometric representation used to compute aerodynamic forces and torques.
Determina si una parte es inmóvil por física.
La velocidad ángular de la montaje de la parte.
El centro de masa de la montura del mundo en el espacio de montaje.
La velocidad lineal de la montaje de la parte.
La masa total de la montura del parte.
Una referencia a la parte raíz de la instalación.
Determina el tipo de superficie para la Cara trasera de una parte (+Z dirección).
Determina el tipo de superficie para la Cara inferior de una parte (-Y dirección).
Determina el color de una parte.
Determina la posición y orientación de la BasePart en el mundo.
Determina si una parte puede colisionar con otras partes.
Determina si la parte se considera durante las operaciones de consulta espacial.
Determina si Touched y TouchEnded eventos se disparan en la parte.
Determina si una parte proyecta una sombra o no.
Describe la posición del mundo en la que se encuentra el centro de masa de una parte.
Describe el nombre de un grupo de colisión de una parte.
Determina el color de una parte.
Indica las propiedades físicas actuales de la parte.
Determina varias propiedades físicas de una parte.
Se utiliza para habilitar o deshabilitar las fuerzas aerodinámicas en las partes y montajes.
El tamaño físico real de la BasePart según el motor de física.
Determina el tipo de superficie para la cara delantera de una parte (-Z dirección).
Determina el tipo de superficie para la cara izquierda de una parte (-X dirección).
Determina un multiplicador para BasePart.Transparency que solo es visible para el cliente local.
Determina si una parte es seleccionable en Studio.
Describe la masa de la parte, el producto de su densidad y volumen.
Determina si la parte contribuye a la masa o inercia total de su cuerpo rígido.
Determina las propiedades físicas predeterminadas y textura de una parte.
El nombre de MaterialVariant .
Describe la rotación de la parte en el mundo.
Especifica el desplazamiento del eje de la parte desde su CFrame .
Describe la posición de la parte en el mundo.
Tiempo desde la última actualización de física registrada.
Determina la cantidad de un bloque que refleja el cielo.
Describe el cambio de tamaño más pequeño permitido por el método de escalado.
Describe las caras en las que se puede redimensionar una parte.
Determina el tipo de superficie para la Cara Derecha de una parte (+X dirección).
La regla principal para determinar la parte raíz de una arquitectura.
La rotación de la parte en grados para los tres ejes.
Determina las dimensiones de una parte (Longitud, ancho, altura).
Determina el tipo de superficie para la Cara Superior de una parte (+Y dirección).
Determina la cantidad de información que se puede ver a través de (el revés de la opacidad de la parte).
Métodos
Substitutes the geometry of this PartOperation with the geometry of another PartOperation.
Aplicar un impulso ángular a la instalación.
Aplica un impulso a la montura en el centro de montaje de la montura center of mass .
Aplica un impulso a la montura en la posición especificada.
Regresa si las partes pueden chocar entre sí.
Comprueba si puedes establecer el propietario de la red de una parte.
Devuelve una tabla de partes conectadas al objeto por cualquier tipo de articulación rígida.
Devuelva todos los Joints o Constraints que estén conectados a esta parte.
Devuelve el valor de la propiedad Mass .
Devuelve al jugador actual que es el propietario de la red de esta parte, o nulo en caso del servidor.
Regresa true si el motor del juego decide automáticamente el propietario de la red para esta parte.
Regresa la parte base de una montura de partes.
Devuelve una tabla de todas las piezas BasePart.CanCollide que tengan intersección con esta parte.
Devuelve la velocidad lineal del montaje de la parte en la posición relativa a esta parte.
Regresa veraz si el objeto está conectado a una parte que lo sostendrá en su lugar (por ejemplo, una parte Anchored )), de lo contrario regresa false.
Cambia el tamaño de un objeto al usar la herramienta de escalado de Studio.
Establece al jugador dado como propietario de la red para esto y todas las partes conectadas.
Deja que el motor del juego decida dinámicamente quién se encargará de la física de la parte (uno de los clientes o el servidor).
- IntersectAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Crea una nueva IntersectOperation a partir de la geometría superpuesta de la parte y las otras partes en el matriz/listadado.
- SubtractAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Crea una nueva UnionOperation desde la parte, minuscula la geometría ocupada por las partes en el matriz/listadado.
- UnionAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Crea una nueva UnionOperation desde la parte, plus la geometría ocupada por las partes en el matriz/listadado.
Gets the pivot of a PVInstance.
Transforms the PVInstance along with all of its descendant PVInstances such that the pivot is now located at the specified CFrame.
Eventos
Eventos heredados de BasePartDispara cuando una parte deja de tocar otra parte como resultado de un movimiento físico.
Dispara cuando una parte toca otra parte como resultado del movimiento físico.
Propiedades
RenderFidelity
This property determines the level of detail that the solid modeled part will be shown in. It can be set to the possible values of the Enum.RenderFidelity enum.
The default value is Automatic, meaning the part's detail is based on its distance from the camera as outlined in the following table.
Distance From Camera | Render Fidelity |
---|---|
Less than 250 studs | Highest |
250-500 studs | Medium |
500 or more studs | Lowest |
SmoothingAngle
This property represents an angle in degrees for a threshold value between face normals on a solid modeled part. If the normal difference is less than the value, normals will be adjusted to smooth the difference. While a value between 30 and 70 degrees usually produces a good result, values between 90 and 180 are not recommended as they may cause a "shadowing" effect on unions with sharp edges.
Note that smoothing does not affect the normals between different materials or different colors.
UsePartColor
Sets whether the PartOperation can be recolored using the BasePart.Color or BasePart.BrickColor properties. When true, the entire union will be colored as per Color or BrickColor. When false, the parts in the union will maintain their original colors from before the onion operation was performed.
Métodos
SubstituteGeometry
Substitutes the geometry of this PartOperation with the geometry of another PartOperation. This makes it easier to utilize the geometry of a solid modeling operation like UnionAsync(), SubtractAsync(), or IntersectAsync() but maintain properties, attributes, tags, and children of the main part such as Attachments, Constraints, ParticleEmitters, light objects, decals, and more. This approach also circumvents the potential "flicker" of completely replacing the original PartOperation with another.
Note that if you're calling this method on a PartOperation with child Attachments or Constraints, you should calculate the affected instances with CalculateConstraintsToPreserve(), then drop those whose recommended parent is nil.
Parámetros
The PartOperation whose geometry will substitute the geometry of this PartOperation.
Devuelve
Muestras de código
local GeometryService = game:GetService("GeometryService")
local mainPart = workspace.PurpleBlock
local otherParts = {workspace.BlueBlock}
local options = {
CollisionFidelity = Enum.CollisionFidelity.Default,
RenderFidelity = Enum.RenderFidelity.Automatic,
SplitApart = false
}
local constraintOptions = {
tolerance = 0.1,
weldConstraintPreserve = Enum.WeldConstraintPreserve.All
}
-- Perform union operation in pcall() since it's asyncronous
local success, newParts = pcall(function()
return GeometryService:UnionAsync(mainPart, otherParts, options)
end)
if success and #newParts > 0 and mainPart:IsA("PartOperation") then
-- Set first part in resulting operation as part to use for substitution
-- First part is simply an option; this can be any PartOperation
local substitutePart = newParts[1]
-- Reposition part to the position of main part
substitutePart.CFrame = mainPart.CFrame
-- Calculate constraints/attachments to either preserve or drop
local recommendedTable = GeometryService:CalculateConstraintsToPreserve(mainPart, newParts, constraintOptions)
-- Substitute main part's geometry with substitution geometry
mainPart:SubstituteGeometry(substitutePart)
-- Drop constraints/attachments that are not automatically preserved with substitution
for _, item in pairs(recommendedTable) do
if item.Attachment then
if item.ConstraintParent == nil then
item.Constraint.Parent = nil
end
if item.AttachmentParent == nil then
item.Attachment.Parent = nil
end
elseif item.WeldConstraint then
if item.Parent == nil then
item.WeldConstraint.Parent = nil
end
end
end
-- Destroy other parts
for _, otherPart in pairs(otherParts) do
otherPart.Parent = nil
otherPart:Destroy()
end
end