本文整理汇总了C++中Clip函数的典型用法代码示例。如果您正苦于以下问题:C++ Clip函数的具体用法?C++ Clip怎么用?C++ Clip使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了Clip函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: if
void FGSensor::ProcessSensorSignal(void)
{
Output = Input; // perfect sensor
// Degrade signal as specified
if (fail_stuck) {
Output = PreviousOutput;
} else if (fcs->GetTrimStatus()) {
if (lag != 0.0) {PreviousOutput = Output; PreviousInput = Input;}
if (drift_rate != 0.0) drift = 0;
if (gain != 0.0) Gain(); // models a finite gain
if (bias != 0.0) Bias(); // models a finite bias
if (delay != 0) for (int i=0; i<delay; i++) output_array[i] = Output;
Clip();
} else {
if (lag != 0.0) Lag(); // models sensor lag and filter
if (noise_variance != 0.0) Noise(); // models noise
if (drift_rate != 0.0) Drift(); // models drift over time
if (gain != 0.0) Gain(); // models a finite gain
if (bias != 0.0) Bias(); // models a finite bias
if (delay != 0) Delay(); // models system signal transport latencies
if (fail_low) Output = -HUGE_VAL;
if (fail_high) Output = HUGE_VAL;
if (bits != 0) Quantize(); // models quantization degradation
Clip();
}
if (IsOutput) SetOutput();
}
开发者ID:matthewzhenggong,项目名称:jsbsim,代码行数:35,代码来源:FGSensor.cpp
示例2: Clip
void FlatTriangle::Draw( Camera* cam ){
int i;
unsigned int* target = cam->target->GetData();
unsigned int* zbuffer = cam->zbuffer;
int width = cam->target->GetWidth();
int height = cam->target->GetHeight();
Poly p_in, p_out;
p_in.vertex_count = 3;
p_in.vertices[0] = vertices[0];
p_in.vertices[1] = vertices[1];
p_in.vertices[2] = vertices[2];
Clip( &p_in, &p_out, &cam->fustrum.sides[0] );
Clip( &p_out, &p_in, &cam->fustrum.sides[1] );
Clip( &p_in, &p_out, &cam->fustrum.sides[2] );
Clip( &p_out, &p_in, &cam->fustrum.sides[3] );
for(i=0; i<p_in.vertex_count; i++) p_in.vertices[i].point.z += 1.0f;
Clip( &p_in, &p_out, &cam->fustrum.znear );
for(i=0; i<p_in.vertex_count; i++) p_in.vertices[i].point.z -= 1.0f;
Poly* pol = &p_out;
pol->Triangulate();
for(i=0; i<pol->face_count; i++){
vertices2D[0] = cam->TransformVector( pol->vertices[pol->faces[i].a].point );
vertices2D[1] = cam->TransformVector( pol->vertices[pol->faces[i].b].point );
vertices2D[2] = cam->TransformVector( pol->vertices[pol->faces[i].c].point );
DrawFlatTriangle( cam->target, vertices2D, color, zbuffer );
}
}
开发者ID:imclab,项目名称:cure-for-cancer,代码行数:32,代码来源:renderer.cpp
示例3: GWire2
void GWire2(Vec4 *p, int n, Vec4* colour) {
int i;
int x1, y1, x2, y2;
int reject, col;
Vec4 value;
for (i=1;i < n ; i++) {
x1 = (int) p[i-1][0];
y1 = (int) p[i-1][1];
x2 = (int) p[i][0];
y2 = (int) p[i][1];
value = colour[i-1];
col = Colour((int) value[0], (int) value[1], (int) value[2]);
reject = Clip(0, WIDTH-1, 0, HEIGHT-1, &x1, &y1, &x2, &y2);
if (!reject)
Line(x1, y1, x2, y2, col);
}
x1 = (int) p[0][0];
y1 = (int) p[0][1];
x2 = (int) p[n-1][0];
y2 = (int) p[n-1][1];
value = colour[n-1];
col = Colour((int) value[0], (int) value[1], (int) value[2]);
reject = Clip(0, WIDTH, 0, HEIGHT, &x1, &y1, &x2, &y2);
if (!reject)
Line(x1, y1, x2, y2, col);
}
开发者ID:graingert,项目名称:comp3004-2,代码行数:26,代码来源:polygon.cpp
示例4: destPointClipped
bool LfnTech::Copy(
void* destBase,
const void* srcBase,
const wxRect& destBounds,
const wxRect& srcBounds,
const wxPoint& destPoint,
const wxRect& srcRect,
int destStride,
int srcStride,
int bytesPerPixel)
{
bool result = false;
if (!destBounds.IsEmpty() && !srcBounds.IsEmpty())
{
wxPoint destPointClipped(destPoint);
wxPoint srcPointClipped(srcRect.GetPosition());
wxSize sizeClipped(srcRect.GetSize());
// Clip against src bounds, then against dest bounds, then once again
// against src bounds in case the dest clip translation moved it significantly.
Clip(srcBounds, srcPointClipped, sizeClipped, destPointClipped);
Clip(destBounds, destPointClipped, sizeClipped, srcPointClipped);
Clip(srcBounds, srcPointClipped, sizeClipped, destPointClipped);
result = Copy(destBase, srcBase, destPointClipped, wxRect(srcPointClipped, sizeClipped), destStride, srcStride, bytesPerPixel);
}
return result;
}
开发者ID:CUGsongchao,项目名称:lafarren-image-completer,代码行数:30,代码来源:ImageUtils.cpp
示例5: GetHeight
void
Canvas::Copy(int dest_x, int dest_y,
unsigned dest_width, unsigned dest_height,
ConstImageBuffer src, int src_x, int src_y)
{
if (!Clip(dest_x, dest_width, GetWidth(), src_x) ||
!Clip(dest_y, dest_height, GetHeight(), src_y))
return;
SDLRasterCanvas canvas(buffer);
canvas.CopyRectangle(dest_x, dest_y, dest_width, dest_height,
src.At(src_x, src_y), src.pitch);
}
开发者ID:ThomasXBMC,项目名称:XCSoar,代码行数:13,代码来源:Canvas.cpp
示例6: Clip
Animation::Animation(Renderer* _owner)
{
owner = _owner;
currentClip = "default";
clip[currentClip] = Clip();
//anim.setTexture(owner->rSource->GetTexture(owner->GetName()));
}
开发者ID:stan4cb,项目名称:Distopia---pre.alpha,代码行数:7,代码来源:Animation.cpp
示例7: GetHeight
void
Canvas::StretchTransparentWhite(int dest_x, int dest_y,
unsigned dest_width, unsigned dest_height,
ConstImageBuffer src, int src_x, int src_y,
unsigned src_width, unsigned src_height)
{
if (!Clip(dest_x, dest_width, GetWidth(), src_x) ||
!Clip(dest_y, dest_height, GetHeight(), src_y))
return;
SDLRasterCanvas canvas(buffer);
TransparentPixelOperations<ActivePixelTraits> operations(canvas.Import(COLOR_WHITE));
canvas.ScaleRectangle(dest_x, dest_y, dest_width, dest_height,
src.At(src_x, src_y), src.pitch, src.width, src.height,
operations);
}
开发者ID:Advi42,项目名称:XCSoar,代码行数:16,代码来源:Canvas.cpp
示例8: Clip
bool FGSensor::Run(void )
{
Input = InputNodes[0]->getDoubleValue() * InputSigns[0];
Output = Input; // perfect sensor
// Degrade signal as specified
if (fail_stuck) {
Output = PreviousOutput;
return true;
}
if (lag != 0.0) Lag(); // models sensor lag and filter
if (noise_variance != 0.0) Noise(); // models noise
if (drift_rate != 0.0) Drift(); // models drift over time
if (bias != 0.0) Bias(); // models a finite bias
if (delay != 0.0) Delay(); // models system signal transport latencies
if (fail_low) Output = -HUGE_VAL;
if (fail_high) Output = HUGE_VAL;
if (bits != 0) Quantize(); // models quantization degradation
Clip(); // Is it right to clip a sensor?
return true;
}
开发者ID:Aero348,项目名称:Matlab-Cularis,代码行数:28,代码来源:FGSensor.cpp
示例9: Clip
bool Winding::Chop(const vec3_t normal, const vec_t dist)
{
Winding* f;
Winding* b;
Clip(normal, dist, &f, &b);
if (b)
{
delete b;
}
if (f)
{
delete[] m_Points;
m_NumPoints = f->m_NumPoints;
m_Points = f->m_Points;
f->m_Points = NULL;
delete f;
return true;
}
else
{
m_NumPoints = 0;
delete[] m_Points;
m_Points = NULL;
return false;
}
}
开发者ID:sbenfold,项目名称:zhlt-linux,代码行数:28,代码来源:winding.cpp
示例10: DoClipCallback
int DoClipCallback(int panel, int control, int event, void *callbackData, int eventData1, int eventData2)
{
int i;
double min, max;
channelPtr chan, newchan;
if (event == EVENT_COMMIT)
{
GetCtrlVal (panel, CLIP_CHANNELS, &i);
GetCtrlVal (panel, CLIP_MIN, &min);
GetCtrlVal (panel, CLIP_MAX, &max);
chan = channellist_GetItem (i);
newchan = channel_Create();
if (newchan && channel_AllocMem (newchan, chan->pts) &&
(Clip (chan->readings, chan->pts, max, min, newchan->readings) == NoErr))
{
Fmt (newchan->label, "%s (clipped)", chan->label);
Fmt (newchan->note, "%s\n%s\nmin = %f[e2p3]\nmax = %f[e2p3]\n",
chan->note, newchan->label, min, max);
channellist_AddChannel (newchan);
return 1;
}
MessagePopup ("Clip Channel Message", "Error clipping channel--function voided");
if (newchan)
{
if (newchan->readings) free (newchan->readings);
free (newchan);
}
}
return 0;
}
开发者ID:gaorlov,项目名称:DAAS,代码行数:34,代码来源:chanfnc.c
示例11: RectPath
bool Painter::IntersectClipOp(const Rect& r)
{
return true;
RectPath(r);
Clip();
return true;
}
开发者ID:dreamsxin,项目名称:ultimatepp,代码行数:7,代码来源:Painter.cpp
示例12: Clip
void FGSensor::ProcessSensorSignal(void)
{
Output = Input; // perfect sensor
// Degrade signal as specified
if (fail_stuck) {
Output = PreviousOutput;
} else {
if (lag != 0.0) Lag(); // models sensor lag and filter
if (noise_variance != 0.0) Noise(); // models noise
if (drift_rate != 0.0) Drift(); // models drift over time
if (gain != 0.0) Gain(); // models a finite gain
if (bias != 0.0) Bias(); // models a finite bias
if (delay != 0) Delay(); // models system signal transport latencies
if (fail_low) Output = -HUGE_VAL;
if (fail_high) Output = HUGE_VAL;
if (bits != 0) Quantize(); // models quantization degradation
Clip();
}
}
开发者ID:AEgisTG,项目名称:jsbsim,代码行数:25,代码来源:FGSensor.cpp
示例13: Clip
_TMESH_TMPL_TYPE
VOID _TMESH_TMPL_DECL::Clip(iFACET facetIndex, eCOORD coord, REAL minVal, REAL maxVal, REAL step)
{
for (REAL val = minVal ; val <= maxVal; val += step ) {
Clip(facetIndex, coord, val);
}
}
开发者ID:venkat78,项目名称:agrid,代码行数:7,代码来源:geom_ops.cpp
示例14: Begin
bool Painter::ClipOp(const Rect& r)
{
Begin();
RectPath(r);
Clip();
return true;
}
开发者ID:ultimatepp,项目名称:mirror,代码行数:7,代码来源:DrawOp.cpp
示例15: Clip
//剪切
void Sprite::Clip( Rect& region )
{
int wid = region._right - region._left + 1;
int hei = region._bottom - region._top + 1;
Clip( region._left, region._top, wid, hei );
}
开发者ID:weimingtom,项目名称:easywar,代码行数:8,代码来源:Sprite.cpp
示例16: Clip
bool FGSwitch::Run(void )
{
bool pass = false;
double default_output=0.0;
for (unsigned int i=0; i<tests.size(); i++) {
if (tests[i]->Default) {
default_output = tests[i]->GetValue();
} else {
pass = tests[i]->condition->Evaluate();
}
if (pass) {
Output = tests[i]->GetValue();
break;
}
}
if (!pass) Output = default_output;
if (delay != 0) Delay();
Clip();
if (IsOutput) SetOutput();
return true;
}
开发者ID:adrcad,项目名称:jsbsim,代码行数:26,代码来源:FGSwitch.cpp
示例17: source
bool FGWaypoint::Run(void )
{
double target_latitude = target_latitude_pNode->getDoubleValue() * target_latitude_unit;
double target_longitude = target_longitude_pNode->getDoubleValue() * target_longitude_unit;
double source_latitude = source_latitude_pNode->getDoubleValue() * source_latitude_unit;
double source_longitude = source_longitude_pNode->getDoubleValue() * source_longitude_unit;
FGLocation source(source_longitude, source_latitude, radius);
if (WaypointType == eHeading) { // Calculate Heading
double heading_to_waypoint_rad = source.GetHeadingTo(target_longitude,
target_latitude);
double heading_to_waypoint = 0;
if (eUnit == eDeg) heading_to_waypoint = heading_to_waypoint_rad * radtodeg;
else heading_to_waypoint = heading_to_waypoint_rad;
Output = heading_to_waypoint;
} else { // Calculate Distance
double wp_distance = source.GetDistanceTo(target_longitude, target_latitude);
if (eUnit == eMeters) {
Output = FeetToMeters(wp_distance);
} else {
Output = wp_distance;
}
}
Clip();
if (IsOutput) SetOutput();
return true;
}
开发者ID:AEgisTG,项目名称:jsbsim,代码行数:33,代码来源:FGWaypoint.cpp
示例18: Clip
void Polyhedron::Clip(const Plane& plane)
{
Vector<Vector3> clippedVertices;
Vector<Vector3> outFace;
Clip(plane, clippedVertices, outFace);
}
开发者ID:valera-rozuvan,项目名称:turso3d,代码行数:7,代码来源:Polyhedron.cpp
示例19: if
bool FGSwitch::Run(void )
{
bool pass = false;
double default_output=0.0;
for (unsigned int i=0; i<tests.size(); i++) {
if (tests[i]->Logic == eDefault) {
default_output = tests[i]->GetValue();
} else if (tests[i]->Logic == eAND) {
pass = true;
for (unsigned int j=0; j<tests[i]->conditions.size(); j++) {
if (!tests[i]->conditions[j]->Evaluate()) pass = false;
}
} else if (tests[i]->Logic == eOR) {
pass = false;
for (unsigned int j=0; j<tests[i]->conditions.size(); j++) {
if (tests[i]->conditions[j]->Evaluate()) pass = true;
}
} else {
cerr << "Invalid logic test" << endl;
}
if (pass) {
Output = tests[i]->GetValue();
break;
}
}
if (!pass) Output = default_output;
Clip();
if (IsOutput) SetOutput();
return true;
}
开发者ID:Aero348,项目名称:Matlab-Cularis,代码行数:35,代码来源:FGSwitch.cpp
示例20: GetTileMatrixSizePixel
internals::PointLatLng MercatorProjection::FromPixelToLatLng(const int &x, const int &y, const int &zoom)
{
internals::PointLatLng ret;// = internals::PointLatLng.Empty;
Size s = GetTileMatrixSizePixel(zoom);
double mapSizeX = s.Width();
double mapSizeY = s.Height();
double xx = (Clip(x, 0, mapSizeX - 1) / mapSizeX) - 0.5;
double yy = 0.5 - (Clip(y, 0, mapSizeY - 1) / mapSizeY);
ret.SetLat(90 - 360 * atan(exp(-yy * 2 * M_PI)) / M_PI);
ret.SetLng(360 * xx);
return ret;
}
开发者ID:LeeSaferite,项目名称:OpenPilot,代码行数:16,代码来源:mercatorprojection.cpp
注:本文中的Clip函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论