MStatus	SelectRingContextCmd2::doEditFlags()
{
	MArgParser pars = parser();

	if( pars.isFlagSet( selEdgesFlag ) )
		pars.getFlagArgument( selEdgesFlag, 0, lastMadeCtx->selEdges );
	
	if( pars.isFlagSet( selFacesFlag ) )
		pars.getFlagArgument( selFacesFlag, 0, lastMadeCtx->selFaces );

	if( pars.isFlagSet( selVerticesFlag ) )
		pars.getFlagArgument( selVerticesFlag, 0, lastMadeCtx->selVertices );
	
	if( pars.isFlagSet( selTypeFlag ) )
		pars.getFlagArgument( selTypeFlag, 0, lastMadeCtx->selType );

	return MS::kSuccess;
}
Exemplo n.º 2
0
MStatus grabUVContextCommand::doEditFlags()
{
	MStatus status = MS::kSuccess;

	MArgParser argData = parser();

	if (argData.isFlagSet(kSizeFlag)) {
		double size;
		status = argData.getFlagArgument(kSizeFlag, 0, size);
		if (!status) {
			status.perror("size flag parsing failed.");
			return status;
		}
		fGrabUVContext->setSize( float(size) );
	}

	return MS::kSuccess;
}
Exemplo n.º 3
0
MStatus proxyPaintContextCmd::doEditFlags()
{
	MStatus status = MS::kSuccess;
	
	MArgParser argData = parser();
	
	if (argData.isFlagSet(kOptFlag)) 
	{
		unsigned mode;
		status = argData.getFlagArgument(kOptFlag, 0, mode);
		if (!status) {
			status.perror("mode flag parsing failed.");
			return status;
		}
		fContext->setOperation(mode);
	}
	
	if (argData.isFlagSet(kLsegFlag)) 
	{
		double lseg;
		status = argData.getFlagArgument(kLsegFlag, 0, lseg);
		if (!status) {
			status.perror("lseg flag parsing failed.");
			return status;
		}
		fContext->setBrushRadius(lseg);
	}
	
	if (argData.isFlagSet(kWeightFlag)) 
	{
		double wei;
		status = argData.getFlagArgument(kWeightFlag, 0, wei);
		if (!status) {
			status.perror("lseg flag parsing failed.");
			return status;
		}
		fContext->setBrushWeight(wei);
	}
	
	if (argData.isFlagSet(kMinFlag)) 
	{
		double noi;
		status = argData.getFlagArgument(kMinFlag, 0, noi);
		if (!status) {
			status.perror("scale min flag parsing failed.");
			return status;
		}
		fContext->setScaleMin(noi);
	}
	
	if (argData.isFlagSet(kMaxFlag)) 
	{
		double noi;
		status = argData.getFlagArgument(kMaxFlag, 0, noi);
		if (!status) {
			status.perror("scale max flag parsing failed.");
			return status;
		}
		fContext->setScaleMax(noi);
	}
	
	if (argData.isFlagSet(kRotateNoiseFlag)) 
	{
		double noi;
		status = argData.getFlagArgument(kRotateNoiseFlag, 0, noi);
		if (!status) {
			status.perror("rotate noise flag parsing failed.");
			return status;
		}
		fContext->setRotationNoise(noi);
	}
	
	if (argData.isFlagSet(kNormalFlag)) 
	{
		unsigned aln;
		status = argData.getFlagArgument(kNormalFlag, 0, aln);
		if (!status) {
			status.perror("normal flag parsing failed.");
			return status;
		}
		fContext->setGrowAlongNormal(aln);
	}
	
	if (argData.isFlagSet(kWriteCacheFlag)) 
	{
		MString ch;
		status = argData.getFlagArgument(kWriteCacheFlag, 0, ch);
		if (!status) {
			status.perror("cache out flag parsing failed.");
			return status;
		}
		fContext->setWriteCache(ch);
	}
	
	if (argData.isFlagSet(kReadCacheFlag)) 
	{
		MString ch;
		status = argData.getFlagArgument(kReadCacheFlag, 0, ch);
		if (!status) {
			status.perror("cache in flag parsing failed.");
			return status;
		}
		fContext->setReadCache(ch);
	}
	
	if (argData.isFlagSet(kMultiCreateFlag)) {
		unsigned mcr;
		status = argData.getFlagArgument(kMultiCreateFlag, 0, mcr);
		if (!status) {
			status.perror("multi create flag parsing failed.");
			return status;
		}
		fContext->setMultiCreate(mcr);
	}
	
	if (argData.isFlagSet(kInstanceGroupCountFlag)) {
		unsigned igc;
		status = argData.getFlagArgument(kInstanceGroupCountFlag, 0, igc);
		if (!status) {
			status.perror("instance group count flag parsing failed.");
			return status;
		}
		fContext->setInstanceGroupCount(igc);
	}
	
	if (argData.isFlagSet(kMinMarginFlag)) {
		double margin = 1.0;
		if (argData.getFlagArgument(kMinMarginFlag, 0, margin) )
			fContext->setMinCreateMargin(margin);
	}
    
    if (argData.isFlagSet(kMaxMarginFlag)) {
		double margin = 1.0;
		if (argData.getFlagArgument(kMaxMarginFlag, 0, margin) )
			fContext->setMaxCreateMargin(margin);
	}
	
	if (argData.isFlagSet(kPlantTypeFlag)) {
		int pty = 0;
		if (argData.getFlagArgument(kPlantTypeFlag, 0, pty) )
			fContext->setPlantType(pty);
	}
	
	if (argData.isFlagSet(kStickToGroundFlag)) {
		int stg = 1;
		if (argData.getFlagArgument(kStickToGroundFlag, 0, stg) )
			fContext->setStickToGround(stg>0);
	}
	
	if(argData.isFlagSet(kSelectVizFlag)) {
		fContext->selectViz();
	}
	
	if (argData.isFlagSet(kNoiseFreqFlag)) {
		double freq = 1;
		if (argData.getFlagArgument(kNoiseFreqFlag, 0, freq) )
			fContext->setNoiseFrequency(freq);
	}
	
	if (argData.isFlagSet(kNoiseLacunarityFlag)) {
		double lac = 1;
		if (argData.getFlagArgument(kNoiseLacunarityFlag, 0, lac) )
			fContext->setNoiseLacunarity(lac);
	}
	
	if (argData.isFlagSet(kNoiseOctaveFlag)) {
		int oct = 1;
		if (argData.getFlagArgument(kNoiseOctaveFlag, 0, oct) )
			fContext->setNoiseOctave(oct);
	}
	
	if (argData.isFlagSet(kNoiseLevelFlag)) {
		double lev = 1;
		if (argData.getFlagArgument(kNoiseLevelFlag, 0, lev) )
			fContext->setNoiseLevel(lev);
	}
	
	if (argData.isFlagSet(kNoiseGainFlag)) {
		double gan = 1;
		if (argData.getFlagArgument(kNoiseGainFlag, 0, gan) )
			fContext->setNoiseGain(gan);
	}
	
	if (argData.isFlagSet(kNoiseOriginXFlag)) {
		double nox = 1;
		if (argData.getFlagArgument(kNoiseOriginXFlag, 0, nox) )
			fContext->setNoiseOriginX(nox);
	}
	
	if (argData.isFlagSet(kNoiseOriginYFlag)) {
		double noy = 1;
		if (argData.getFlagArgument(kNoiseOriginYFlag, 0, noy) )
			fContext->setNoiseOriginY(noy);
	}
	
	if (argData.isFlagSet(kNoiseOriginZFlag)) {
		double noz = 1;
		if (argData.getFlagArgument(kNoiseOriginZFlag, 0, noz) )
			fContext->setNoiseOriginZ(noz);
	}

	return MS::kSuccess;
}