Formula Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Single Formula.
This class is available in Office 2007 and above.
When the object is serialized out as xml, it's qualified name is v:f.
[DocumentFormat.OpenXml.OfficeAvailability(DocumentFormat.OpenXml.FileFormatVersions.Office2007)]
[DocumentFormat.OpenXml.SchemaAttr(26, "f")]
public class Formula : DocumentFormat.OpenXml.OpenXmlLeafElement
public class Formula : DocumentFormat.OpenXml.OpenXmlLeafElement
[DocumentFormat.OpenXml.SchemaAttr(26, "f")]
public class Formula : DocumentFormat.OpenXml.OpenXmlLeafElement
[DocumentFormat.OpenXml.SchemaAttr("v:f")]
public class Formula : DocumentFormat.OpenXml.OpenXmlLeafElement
[DocumentFormat.OpenXml.SchemaAttr("v:f")]
public class Formula : DocumentFormat.OpenXml.TypedOpenXmlLeafElement
[DocumentFormat.OpenXml.OfficeAvailability(DocumentFormat.OpenXml.FileFormatVersions.Office2007)]
public class Formula : DocumentFormat.OpenXml.OpenXmlLeafElement
[<DocumentFormat.OpenXml.OfficeAvailability(DocumentFormat.OpenXml.FileFormatVersions.Office2007)>]
[<DocumentFormat.OpenXml.SchemaAttr(26, "f")>]
type Formula = class
inherit OpenXmlLeafElement
type Formula = class
inherit OpenXmlLeafElement
[<DocumentFormat.OpenXml.SchemaAttr(26, "f")>]
type Formula = class
inherit OpenXmlLeafElement
[<DocumentFormat.OpenXml.SchemaAttr("v:f")>]
type Formula = class
inherit OpenXmlLeafElement
[<DocumentFormat.OpenXml.SchemaAttr("v:f")>]
type Formula = class
inherit TypedOpenXmlLeafElement
[<DocumentFormat.OpenXml.OfficeAvailability(DocumentFormat.OpenXml.FileFormatVersions.Office2007)>]
type Formula = class
inherit OpenXmlLeafElement
Public Class Formula
Inherits OpenXmlLeafElement
Public Class Formula
Inherits TypedOpenXmlLeafElement
- Inheritance
- Inheritance
- Attributes
Remarks
[ISO/IEC 29500-1 1st Edition]
f (Single Formula)
This element defines a single value as the result of the evaluation of an expression. The expression is defined by the eqn attribute and has the general form of an operation followed by up to three arguments, which consist of adjustment values (see the adj attribute of the shape element (§14.1.2.19)), the results of earlier formulas, fixed numbers or pre-defined values. Each f value is referenced using "@" followed by a number corresponding to the zero-based index for that value in the list of f elements. [Example: For example, the value of the second f element is referenced as "@2". end example]
[Example: The following defines a blue arrow pointing to the right:
<v:shape coordsize="21600,21600" adj="18000,5400,10800"
path="m @0,0 l @0,@1 0,@1 0,@3 @0,@3 @0,21600 21600,10800 x e"
style='left:50pt;top:50pt;width:90pt;height:30pt'
fillcolor="#4f81bd" strokecolor="#4f81bd" strokeweight="2pt">
<v:formulas>
<v:f eqn="val #0"/>
<v:f eqn="val #1"/>
<v:f eqn="val #2"/>
<v:f eqn="sum height 0 #1"/>
<v:f eqn="sum #2 0 #1"/>
<v:f eqn="sum width 0 #0"/>
<v:f eqn="prod @5 @4 #2"/>
<v:f eqn="sum width 0 @6"/>
</v:formulas>
</v:shape>
The shape looks like this:
end example]
Parent Elements |
---|
formulas (§14.1.2.6) |
Attributes | Description |
---|---|
eqn (Equation) | Specifies a single formula, which consists of a named operation followed by up to three parameters, typically described as v, P1 and P2. Up to 128 formulas can be specified. These operations are defined (calculation accuracy is discussed below): Operation Description val v Returns the supplied value. Exact. sum Addition and subtraction. Exact. product Multiplication and division. Rounds up. mid Simple average. Rounds toward zero. abs Absolute value. Exact. min The lesser of two values. Exact. max The greater of two values. Exact. if Conditional selection. Exact. mod Modulus. Inexact. atan2 Trigonometric arc tangent of a quotient. Result is in "fd" units or fractional degrees - degrees . Inexact. sin Sine. Argument is in "fd" units or fractional degrees - degrees . Inexact. cos Cosine. Argument is in "fd" units or fractional degrees - degrees . Inexact. cosatan2 Preserves full accuracy in the intermediate calculation. Inexact. sinatan2 Preserves full accuracy in the intermediate calculation. Inexact. sqrt Square root. Result is positive and rounds down. Inexact. sumangle Adds an existing angle in fd units (v) to two other angles specified in degrees. P1 and P2 are scaled by . Exact. ellipse The eccentricity formula for an ellipse, where v is length of the semiminor axis and P1 is the length of the semimajor axis. Inexact. tan Tangent. Argument is in "fd" units or fractional degrees - degrees . Inexact. Formulas are evaluated to full precision, but the result is always a 32-bit integer. Formula authors should avoid formulas which are discontinuous - not only are many of the trigonometric operations inexact, the transformations within the coordinate spaces are also inexact. This can mean that a set of formulas which is discontinuous evaluates to give very different path values with the same input on two different systems. When an operation is marked as exact then a conforming implementation shall always generate the correct arithmetic answer (unless the calculations overflow internally). The product operation is required to round to the nearest integer. If the result is exactly 0.5 then it shall be rounded up to the next numerically greater integer. The mid operation is required to round towards 0. All other operations are inexact, but the implementation shall round non-integral values down (towards -infinity) and should perform internal calculations with this form of rounding. The arguments used in the evaluation of a formula are normally either fixed numbers, the result of the evaluation of a previous formula or an adjust value - the value of the corresponding entry in the shape adj attribute. Fixed numbers shall be positive integral values in the range 0 to 65535 (unsigned 16-bit numbers). The following named values are defined: Value Description @n The value of formula n, where n is the zero-based index of the formula in the list of formulas. n shall be less than the current formula index. #n Adjustment (adj) value n. n shall be in the range 0 to 7. width The width defined by the coordsize attribute. height The height defined by the coordsize attribute. xcenter The x ordinate of the center of the coordinate space defined by coordorigin and coordsize. ycenter The y ordinate of the center of the coordinate space defined by coordorigin and coordsize. xlimo The x value of the limo attribute (see also the path element (§14.1.2.14)). ylimo The y value of the limo attribute (see also the path element (§14.1.2.14)). hasstroke 1 if the shape has a stroke operation, 0 if it does not, as determined by the on attribute of the stroke element (§14.1.2.21). hasfill 1 if the shape has a fill operation, 0 if it does not, as determined by the on attribute of the fill element (§14.1.2.5). pixellinewidth The line width in output device pixels. This is used to outset lines from the edge of a rectangle on the assumption that the implementation draws to lower right pixel in preference to the upper left pixel when a line is on a pixel boundary. pixelwidth The width of the shape in device pixels (i.e., the coordsize width transformed into device space). pixelheight The height of the coordsize in device pixels. emuwidth The width of the coordsize in EMUs. emuheight The height of the coordsize in EMUs. emuwidth2 Half the width of the coordsize in EMUs. emuheight2 Half the height of the coordsize in EMUs. The EMU, or English Metric Unit, is the smallest unit of measure in VML and corresponds to 914400 EMU per inch or 12700 EMU per point. See above for an example. The possible values for this attribute are defined by the W3C XML Schema string datatype. |
[Note: The W3C XML Schema definition of this element’s content model (CT_F) is located in §A.6.1. end note]
� ISO/IEC29500: 2008.
Constructors
Formula() |
Initializes a new instance of the Formula class. |
Properties
ChildElements |
Gets all the child nodes of the current element. (Inherited from OpenXmlElement) |
Equation |
Equation Represents the following attribute in the schema: eqn |
ExtendedAttributes |
Gets all extended attributes (attributes not defined in the schema) of the current element. (Inherited from OpenXmlElement) |
Features |
Gets a IFeatureCollection for the current element. This feature collection will be read-only, but will inherit features from its parent part and package if available. (Inherited from OpenXmlElement) |
FirstChild |
Gets the first child of the OpenXmlElement element. Returns null (Nothing in Visual Basic) if there is no such OpenXmlElement element. (Inherited from OpenXmlElement) |
HasAttributes |
Gets a value indicating whether the current element has any attributes. (Inherited from OpenXmlElement) |
HasChildren |
Gets a value that indicates whether the current element has any child elements. (Inherited from OpenXmlLeafElement) |
InnerText |
Gets or sets the concatenated values of the node and all of its children. (Inherited from OpenXmlElement) |
InnerXml |
Gets or sets the markup that only represents child elements of the current element. (Inherited from OpenXmlLeafElement) |
LastChild |
Gets the last child of the OpenXmlElement element. Returns null (Nothing in Visual Basic) if there is no such OpenXmlElement element. (Inherited from OpenXmlElement) |
LocalName | |
LocalName |
Gets the local name of the current element. (Inherited from OpenXmlElement) |
MCAttributes |
Gets or sets the markup compatibility attributes. Returns null if no markup compatibility attributes are defined for the current element. (Inherited from OpenXmlElement) |
NamespaceDeclarations |
Gets all the namespace declarations defined in the current element. Returns an empty enumerator if there is no namespace declaration. (Inherited from OpenXmlElement) |
NamespaceUri |
Gets the namespace URI of the current element. (Inherited from OpenXmlElement) |
OpenXmlElementContext |
Gets the OpenXmlElementContext of the current element. (Inherited from OpenXmlElement) |
OuterXml |
Gets the markup that represents the current element and all of its child elements. (Inherited from OpenXmlElement) |
Parent |
Gets the parent element of the current element. (Inherited from OpenXmlElement) |
Prefix |
Gets the namespace prefix of current element. (Inherited from OpenXmlElement) |
XmlQualifiedName |
Gets the qualified name of the current element. (Inherited from OpenXmlElement) |
XName |
Gets the qualified name of the current element. (Inherited from OpenXmlElement) |
Methods
AddAnnotation(Object) |
Adds an object to the current OpenXmlElement element's list of annotations. (Inherited from OpenXmlElement) |
AddNamespaceDeclaration(String, String) |
Adds a namespace declaration to the current node. (Inherited from OpenXmlElement) |
Ancestors() |
Enumerates all of the current element's ancestors. (Inherited from OpenXmlElement) |
Ancestors<T>() |
Enumerates only the current element's ancestors that have the specified type. (Inherited from OpenXmlElement) |
Annotation(Type) |
Get the first annotation object of the specified type from the current OpenXmlElement element. (Inherited from OpenXmlElement) |
Annotation<T>() |
Get the first annotation object of the specified type from the current OpenXmlElement element. (Inherited from OpenXmlElement) |
Annotations(Type) |
Gets a collection of annotations with the specified type for the current OpenXmlElement element. (Inherited from OpenXmlElement) |
Annotations<T>() |
Gets a collection of annotations with the specified type for the current OpenXmlElement element. (Inherited from OpenXmlElement) |
Append(IEnumerable<OpenXmlElement>) |
Appends each element from a list of elements to the end of the current element's list of child elements. (Inherited from OpenXmlElement) |
Append(OpenXmlElement[]) |
Appends each element from an array of elements to the end of the current element's list of child elements. (Inherited from OpenXmlElement) |
AppendChild<T>(T) |
Appends the specified element to the end of the current element's list of child nodes. (Inherited from OpenXmlElement) |
ClearAllAttributes() |
Clears all of the attributes, including both known attributes and extended attributes. (Inherited from OpenXmlElement) |
Clone() |
Creates a duplicate of the current node. (Inherited from OpenXmlElement) |
CloneNode(Boolean) |
Creates a duplicate of this node. |
Descendants() |
Enumerates all of the current element's descendants. (Inherited from OpenXmlElement) |
Descendants<T>() |
Enumerate all of the current element's descendants of type T. (Inherited from OpenXmlElement) |
Elements() |
Enumerates all of the current element's children. (Inherited from OpenXmlElement) |
Elements<T>() |
Enumerates only the current element's children that have the specified type. (Inherited from OpenXmlElement) |
ElementsAfter() |
Enumerates all of the sibling elements that follow the current element and have the same parent as the current element. (Inherited from OpenXmlElement) |
ElementsBefore() |
Enumerates all of the sibling elements that precede the current element and have the same parent as the current element. (Inherited from OpenXmlElement) |
GetAttribute(String, String) |
Gets an Open XML attribute with the specified tag name and namespace URI. (Inherited from OpenXmlElement) |
GetAttributes() |
Gets a list that contains a copy of all the attributes. (Inherited from OpenXmlElement) |
GetEnumerator() |
Returns an enumerator that iterates through the child collection. (Inherited from OpenXmlElement) |
GetFirstChild<T>() |
Finds the first child element in type T. (Inherited from OpenXmlElement) |
InsertAfter<T>(T, OpenXmlElement) |
Inserts the specified element immediately after the specified reference element. (Inherited from OpenXmlElement) |
InsertAfterSelf<T>(T) |
Inserts the specified element immediately after the current element. (Inherited from OpenXmlElement) |
InsertAt<T>(T, Int32) |
Inserts the specified element at the specified index in the current element's list of child elements. (Inherited from OpenXmlElement) |
InsertBefore<T>(T, OpenXmlElement) |
Inserts the specified element immediately before the specified reference element. (Inherited from OpenXmlElement) |
InsertBeforeSelf<T>(T) |
Inserts the specified element immediately before the current element. (Inherited from OpenXmlElement) |
IsAfter(OpenXmlElement) |
Determines if the current element appears after a specified element in document order. (Inherited from OpenXmlElement) |
IsBefore(OpenXmlElement) |
Determines if the current element appears before a specified element in document order. (Inherited from OpenXmlElement) |
LookupNamespace(String) |
Resolves the namespace prefix in the context of the current node. (Inherited from OpenXmlElement) |
LookupPrefix(String) |
Finds the corresponding prefix for a namespace uri in the current element scope. (Inherited from OpenXmlElement) |
NextSibling() |
Gets the OpenXmlElement element that immediately follows the current OpenXmlElement element. Returns null (Nothing in Visual Basic) if there is no next OpenXmlElement element. (Inherited from OpenXmlElement) |
NextSibling<T>() |
Gets the OpenXmlElement element with the specified type that follows the current OpenXmlElement element. Returns null (Nothing in Visual Basic) if there is no next OpenXmlElement. (Inherited from OpenXmlElement) |
PrependChild<T>(T) |
Inserts the specified element at the beginning of the current element's list of child elements. (Inherited from OpenXmlElement) |
PreviousSibling() |
Gets the OpenXmlElement element that immediately precedes the current OpenXmlElement element. Returns null (Nothing in Visual Basic ) if there is no preceding OpenXmlElement element. (Inherited from OpenXmlElement) |
PreviousSibling<T>() |
Gets the OpenXmlElement element with the specified type that precedes the current OpenXmlElement. Returns null (Nothing in Visual Basic) if there is no preceding OpenXmlElement element. (Inherited from OpenXmlElement) |
Remove() |
Removes the current element from its parent. (Inherited from OpenXmlElement) |
RemoveAllChildren() |
Removes all child elements of the current element. (Inherited from OpenXmlLeafElement) |
RemoveAllChildren<T>() |
Remove all of the current element's child elements that are of type T. (Inherited from OpenXmlElement) |
RemoveAnnotations(Type) |
Removes the annotations of the specified type from the current OpenXmlElement element. (Inherited from OpenXmlElement) |
RemoveAnnotations<T>() |
Removes the annotations with the specified type from the current OpenXmlElement element. (Inherited from OpenXmlElement) |
RemoveAttribute(String, String) |
Removes the attribute from the current element. (Inherited from OpenXmlElement) |
RemoveChild<T>(T) |
Removes the specified child element from the current element's list of child elements. (Inherited from OpenXmlElement) |
RemoveNamespaceDeclaration(String) |
Removes the namespace declaration for the specified prefix. Removes nothing if there is no prefix. (Inherited from OpenXmlElement) |
ReplaceChild<T>(OpenXmlElement, T) |
Replaces a child element with another child element in the current element's list of child elements. (Inherited from OpenXmlElement) |
SetAttribute(OpenXmlAttribute) |
Sets an attribute to the specified element. If the attribute is a known attribute, the value of the attribute is set. If the attribute is an extended attribute, the 'openxmlAttribute' is added to the extended attributes list. (Inherited from OpenXmlElement) |
SetAttributes(IEnumerable<OpenXmlAttribute>) |
Sets a number of attributes to the element. If an attribute is a known attribute, the value of the attribute is set. If an attribute is an extended attribute, the 'openxmlAttribute' is added to the extended attributes list. (Inherited from OpenXmlElement) |
WriteTo(XmlWriter) |
Saves the current node to the specified XmlWriter. (Inherited from OpenXmlElement) |
Explicit Interface Implementations
IEnumerable.GetEnumerator() | (Inherited from OpenXmlElement) |
IEnumerable<OpenXmlElement>.GetEnumerator() |
Returns an enumerator that iterates through the child collection. (Inherited from OpenXmlElement) |