% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/stat-identity-3d.R
\name{stat_identity_3d}
\alias{stat_identity_3d}
\title{3D-aware identity transformation}
\usage{
stat_identity_3d(
  mapping = NULL,
  data = NULL,
  geom = "point",
  position = "identity",
  na.rm = FALSE,
  show.legend = NA,
  inherit.aes = TRUE,
  light = NULL,
  ...
)
}
\arguments{
\item{mapping}{Set of aesthetic mappings created by \code{\link[=aes]{aes()}}.}

\item{data}{The data to be displayed in this layer.}

\item{geom}{The geometric object to use display the data.}

\item{position}{Position adjustment, defaults to "identity".}

\item{na.rm}{If \code{FALSE}, missing values are removed with a warning.}

\item{show.legend}{Logical indicating whether this layer should be included in legends.}

\item{inherit.aes}{If \code{FALSE}, overrides the default aesthetics.}

\item{light}{A lighting specification object created by \code{\link[=light]{light()}}, \code{light("none")}
or the string \code{"none"} to disable lighting, or \code{NULL} to inherit plot-level
lighting. Set plot-level lighting by adding \code{\link[=light]{light()}} to the plot, and
layer-specific lighting via the \code{light} argument of \verb{geom_*_3d()} functions,
which takes precedence.}

\item{...}{Other arguments passed on to geom layer.}
}
\value{
A \code{Layer} object that can be added to a ggplot.
}
\description{
This stat performs identity transformation (passes data through unchanged) while
properly handling discrete scales and lighting specifications for 3D coordinate
systems. It also converts group values to hierarchical format to prevent
reordering withing groups during depth sorting.
}
\details{
This stat is primarily intended for use with 3D geoms that need discrete scale
or lighting support, following the same pattern as other ggcube stats.
}
\section{Computed variables}{

\itemize{
\item \code{x_raw}, \code{y_raw}, \code{z_raw}: Original values before discrete-to-numeric conversion
\item \code{group}: Converted to hierarchical format (e.g., "1__group", "2__group") for proper depth sorting.
}
}

\seealso{
\code{\link[=geom_point_3d]{geom_point_3d()}}, \code{\link[=geom_polygon_3d]{geom_polygon_3d()}} which use this stat for discrete scale support.
}
