class_docstr: The 2D convolution layer used by the feature encoder in PointNet.
class_docstr_tok: ["The","2D","convolution","layer","used","by","the","feature","encoder","in","PointNet","."]
docstr: Builds the layer with a specified input_shape.
docstr_tok: ["Builds","the","layer","with","a","specified","input_shape","."]
code: def build(self, input_shape: tf.Tensor):
      """Builds the layer with a specified input_shape."""
      self.conv = tf.keras.layers.Conv2D(
          self.channels, (1, 1), input_shape=input_shape
      )
      self.bn = tf.keras.layers.BatchNormalization(
          momentum=self.momentum
      )
  
imports: from typing import Optional
  import tensorflow
  from tensorflow_graphics.util import export_api
label_desc: Use image node_id 2 for calling the PointNetConv2Layer obj's underlying member method code with example usage: obj.build(input_shape) without return types