how to clip the 3D Model?

I have a 3D model. Is there any possibility to render the sectional view (clipping) like glClipPlanein OpenGL?

like this DEMO: https://threejs.org/examples/webgl_clipping.html

**Fragment Shader:**

uniform float time;
uniform vec2 resolution;
varying vec2 vUv;
void main( void )
{
vec2 position = -1.0 + 2.0 * vUv;
float red = abs( sin( position.x * position.y + time / 2.0 ) );
float green = abs( cos( position.x * position.y + time / 3.0 ) );
float blue = abs( cos( position.x * position.y + time / 4.0 ) );
if(position.x > 0.2 && position.y > 0.2 )
{
discard;
}
gl_FragColor = vec4( red, green, blue, 1.0 ); }


**Vertex Shader:**

varying vec2 vUv;
void main()
{
vUv = uv;
vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );
gl_Position = projectionMatrix * mvPosition;
}

**activ TSCS p PG ;**

515CS;

/ ;

zone1 ;

14 numéro ;

PE agglomeration 40 j ;

earth home ;

Poclatt general ;

N.

activ TSCS p PG ;

515CS;

/ ;

zone1 ;

14 numéro ;

PE agglomeration 40 j ;

earth home ;

Poclatt general ;

  • ;

Fragment Shader:

uniform float
time;

uniform vec2
resolution;

varying vec2 vUv;

void main( void )

{

vec2 position = -1.0 + 2.0 * vUv;

float red = abs(
sin( position.x * position.y + time / 2.0 ) );

float green = abs(
cos( position.x * position.y + time / 3.0 ) );

float blue = abs(
cos( position.x * position.y + time / 4.0 ) );

if(position.x >
0.2 && position.y > 0.2 )

{

discard;

}

gl_FragColor =
vec4( red, green, blue, 1.0 ); }

Vertex Shader:

varying vec2 vUv;

void main()

{

vUv = uv;

vec4 mvPosition = modelViewMatrix * vec4(
position, 1.0 );

gl_Position = projectionMatrix *
mvPosition;

}