Logo Search packages:      
Sourcecode: csound version File versions  Download package

void csound::Score::setPTV ( size_t  begin,
size_t  end,
double  prime,
double  transposition,
double  voicing,
double  lowest,
double  range,
size_t  divisionsPerOctave = 12 
) [virtual]

For the specified segment of the score, adjust the pitches to match the specified indexes for the prime chord, its transposition, and their voicing within the specified range. Each of these indexes forms an additive cyclic group.

See: http://ruccas.org/pub/Gogins/music_atoms.pdf

Definition at line 587 of file Score.cpp.

References csound::System::inform(), csound::Voicelead::ptvToChord(), setPitches(), and csound::Voicelead::uniquePcs().

Referenced by csound::VoiceleadingNode::apply().

  {
    if (begin_ < 0) {
      begin_ = 0;
    }
    if (end_ > size()) {
      end_ = size();
    }
    if (begin_ == end_) {
      return;
    }
    System::inform("BEGAN Score::setPTV(%d, %d, %f, %f, %f, %f, %f, %d)...\n", begin_, end_, P, T, V, lowest, range, divisionsPerOctave_);
    std::vector<double> voicing = Voicelead::ptvToChord(P, T, V, lowest, lowest + range, divisionsPerOctave_);
    setPitches(begin_, end_, voicing);
    std::vector<double> pcs = Voicelead::uniquePcs(voicing, divisionsPerOctave_);
    printChord("pcs of voicing: ", pcs);
    System::inform("ENDED Score::setPTV.\n");
  }


Generated by  Doxygen 1.6.0   Back to index