Пример #1
0
 /// <summary>
 /// Makes the instance a clone (deep copy) of the specified
 /// <see cref="Projection"/>.
 /// </summary>
 /// <param name="source">The object to clone.</param>
 /// <remarks>
 /// <strong>Notes to Inheritors:</strong> Every <see cref="Projection"/> derived class must
 /// implement this method.
 /// </remarks>
 protected abstract void CloneCore(Projection source);
Пример #2
0
 /// <summary>
 /// When implemented in a derived class, creates a new instance of the <see cref="Camera"/>
 /// derived class.
 /// </summary>
 /// <returns>The new instance.</returns>
 /// <remarks>
 /// <para>
 /// Do not call this method directly (except when calling base in an implementation). This
 /// method is called internally by the <see cref="Clone"/> method whenever a new instance of the
 /// <see cref="Camera"/> is created.
 /// </para>
 /// <para>
 /// <strong>Notes to Inheritors:</strong> Every <see cref="Camera"/> derived class must
 /// implement this method. A typical implementation is to simply call the default constructor
 /// and return the result.
 /// </para>
 /// </remarks>
 protected virtual Camera CreateInstanceCore()
 {
     return(new Camera(Projection.Clone()));
 }
Пример #3
0
 /// <inheritdoc/>
 protected override Light CreateInstanceCore()
 {
     return(new ProjectorLight(null, Projection.Clone()));
 }