> For the complete documentation index, see [llms.txt](https://kinematicsoup.gitbook.io/reactor/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kinematicsoup.gitbook.io/reactor/api-reference/ks.reactor/ks.reactor.ksbasequeryparams.md).

# Class ksBaseQueryParams

Namespace: [KS.Reactor](/reactor/api-reference/ks.reactor.md)\
Assembly: KSCommon.dll

Base class containing parameters used in all physics queries.

```csharp
public abstract class ksBaseQueryParams
```

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) â† [ksBaseQueryParams](/reactor/api-reference/ks.reactor/ks.reactor.ksbasequeryparams.md)

#### Derived

[ksOverlapParams](/reactor/api-reference/ks.reactor/ks.reactor.ksoverlapparams.md), [ksRaycastParams](/reactor/api-reference/ks.reactor/ks.reactor.ksraycastparams.md)

#### Inherited Members

[object.Equals(object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals\(system-object\)), [object.Equals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals\(system-object-system-object\)), [object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode), [object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype), [object.MemberwiseClone()](https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone), [object.ReferenceEquals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.referenceequals), [object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)

## Fields

### ExcludeEntity <a href="#ks_reactor_ksbasequeryparams_excludeentity" id="ks_reactor_ksbasequeryparams_excludeentity"></a>

This entity is excluded from results.

```csharp
public ksIEntity ExcludeEntity
```

#### Field Value

[ksIEntity](/reactor/api-reference/ks.reactor/ks.reactor.ksientity.md)

### Filter <a href="#ks_reactor_ksbasequeryparams_filter" id="ks_reactor_ksbasequeryparams_filter"></a>

Query filter for filtering results. If null, all hits are touching.

```csharp
public ksIQueryFilter Filter
```

#### Field Value

[ksIQueryFilter](/reactor/api-reference/ks.reactor/ks.reactor.ksiqueryfilter.md)

### Flags <a href="#ks_reactor_ksbasequeryparams_flags" id="ks_reactor_ksbasequeryparams_flags"></a>

Query flags for filtering results.

```csharp
public ksQueryFlags Flags
```

#### Field Value

[ksQueryFlags](/reactor/api-reference/ks.reactor/ks.reactor.ksqueryflags.md)

## Properties

### ObjectType <a href="#ks_reactor_ksbasequeryparams_objecttype" id="ks_reactor_ksbasequeryparams_objecttype"></a>

The object type used in the query.

```csharp
public virtual ksQueryObjectTypes ObjectType { get; }
```

#### Property Value

[ksQueryObjectTypes](/reactor/api-reference/ks.reactor/ks.reactor.ksqueryobjecttypes.md)

### Origin <a href="#ks_reactor_ksbasequeryparams_origin" id="ks_reactor_ksbasequeryparams_origin"></a>

The starting position of the physics query.

```csharp
public abstract ksVector3 Origin { get; set; }
```

#### Property Value

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### QueryType <a href="#ks_reactor_ksbasequeryparams_querytype" id="ks_reactor_ksbasequeryparams_querytype"></a>

Query type

```csharp
public abstract ksQueryTypes QueryType { get; }
```

#### Property Value

[ksQueryTypes](/reactor/api-reference/ks.reactor/ks.reactor.ksquerytypes.md)

## Methods

### CopyTo(ksBaseQueryParams) <a href="#ks_reactor_ksbasequeryparams_copyto_ks_reactor_ksbasequeryparams" id="ks_reactor_ksbasequeryparams_copyto_ks_reactor_ksbasequeryparams"></a>

Copies the values from this object to the `target`. [Origin](#KS_Reactor_ksBaseQueryParams_Origin) is not copied. To copy [Origin](#KS_Reactor_ksBaseQueryParams_Origin), use one of the derived class CopyTo methods.

```csharp
public void CopyTo(ksBaseQueryParams target)
```

#### Parameters

`target` [ksBaseQueryParams](/reactor/api-reference/ks.reactor/ks.reactor.ksbasequeryparams.md)

Target to copy to.

### Validate(bool) <a href="#ks_reactor_ksbasequeryparams_validate_system_boolean" id="ks_reactor_ksbasequeryparams_validate_system_boolean"></a>

Checks if the parameters are valid. The base implementation is always valid.

```csharp
public virtual bool Validate(bool log = true)
```

#### Parameters

`log` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

If true, logs warnings describing what is invalid if anything is invalid.

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

True if the params are valid.
