# Documentation

### This is machine translation

Translated by
Mouseover text to see original. Click the button below to return to the English verison of the page.

# inOutStatus

Class: DelaunayTri

(Not recommended) Status of triangles in 2-D constrained Delaunay triangulation

### Note

`inOutStatus(DelaunayTri)` is not recommended. Use `isInterior(delaunayTriangulation)` instead.

`DelaunayTri` is not recommended. Use `delaunayTriangulation` instead.

## Syntax

```IN = inOutStatus(DT) ```

## Description

`IN = inOutStatus(DT)` returns the in/out status of the triangles in a 2-D constrained Delaunay triangulation of a geometric domain. Given a Delaunay triangulation that has a set of constrained edges that define a bounded geometric domain. The `i`'th triangle in the triangulation is classified as inside the domain if ```IN(i) = 1``` and outside otherwise.

### Note

`inOutStatus` is only relevant for 2-D constrained Delaunay triangulations where the imposed edge constraints bound a closed geometric domain.

## Input Arguments

 `DT` Delaunay triangulation.

## Output Arguments

 `IN` Logical array of length equal to the number of triangles in the triangulation. The constrained edges in the triangulation define the boundaries of a valid geometric domain.

## Examples

Create a geometric domain that consists of a square with a square hole:

```outerprofile = [-5 -5; -3 -5; -1 -5; 1 -5; 3 -5; ... 5 -5; 5 -3; 5 -1; 5 1; 5 3;... 5 5; 3 5; 1 5; -1 5; -3 5; ... -5 5; -5 3; -5 1; -5 -1; -5 -3; ]; innerprofile = outerprofile.*0.5; profile = [outerprofile; innerprofile]; outercons = [(1:19)' (2:20)'; 20 1;]; innercons = [(21:39)' (22:40)'; 40 21]; edgeconstraints = [outercons; innercons];```
Create a constrained Delaunay triangulation of the domain:
```dt = DelaunayTri(profile, edgeconstraints) subplot(1,2,1); triplot(dt); hold on; plot(dt.X(outercons',1), dt.X(outercons',2), ... '-r', 'LineWidth', 2); plot(dt.X(innercons',1), dt.X(innercons',2), ... '-r', 'LineWidth', 2); axis equal; % Plot showing interior and exterior % triangles with respect to the domain. hold off; subplot(1,2,2); inside = inOutStatus(dt); triplot(dt(inside, :), dt.X(:,1), dt.X(:,2)); hold on; plot(dt.X(outercons',1), dt.X(outercons',2), ... '-r', 'LineWidth', 2); plot(dt.X(innercons',1), dt.X(innercons',2), ... '-r', 'LineWidth', 2); axis equal; % Plot showing interior triangles only hold off;```